ruby on rails - Carrierwave not uploading image for model through different controller -


i'm trying upload file carrierwave form , controller that's separate model carrierwave mounted on.

my uploader logouploader mounted on :logo attribute of setting model.

class setting < activerecord::base   validates :name, presence: true, uniqueness: true    mount_uploader :logo, logouploader end 

migration:

class addlogotosettings < activerecord::migration   def change     add_column :settings, :logo, :string   end end 

i have form @ views/feedback/configure.html.erb handling image upload through feedbackcontroller:

  <%= form_tag({:action => 'save_configuration'}, id: 'form-save') %> <div class="form-group">       <%= file_field_tag "settings[cac_hlogo]" %>       <%= image_tag(@cac_hlogo.logo.url) if @cac_hlogo.logo? %>     </div>      <div class="form-actions">       <%= submit_tag t('save').titlecase, class: 'btn btn-primary' %>     </div>   <% end %> 

feedbackcontroller:

class feedbackcontroller < applicationcontroller   def configure     @cac_hlogo = setting.find_or_create_by(name: 'cac_hlogo')   end    def save_configuration     cac_hlogo = setting.find_or_create_by(name: 'cac_hlogo')     cac_hlogo.logo = params[:settings][:cac_hlogo]      respond_to |format|       if cac_hlogo.save         format.html { redirect_to configure_feedback_index_path, notice: 'configuration saved.' }       else         format.html { redirect_to root_path, notice: 'there problem saving configuration.'}       end     end   end end 

i permit :logo attribute updated in settingscontroller:

class settingscontroller < applicationcontroller   before_action :authenticate_user!   load_and_authorize_resource    def setting_params     params.require(:setting).permit(:logo)   end  end 

for reason file never uploads , have no idea why. parameters i'm passing in form seem right, nothing gets uploaded. missing? note: using local storage , other carrierwave uploaders in application work fine.

the solution add enctype: "multipart/form-data" form_tag so: <%= form_tag({:action => 'save_configuration'}, enctype: "multipart/form-data", id: 'form-save') %>


Comments

Popular posts from this blog

mysql - Dreamhost PyCharm Django Python 3 Launching a Site -

java - Sending SMS with SMSLib and Web Services -

java - How to resolve The method toString() in the type Object is not applicable for the arguments (InputStream) -