回形针将图像添加到控制器后的问题

时间:2016-02-24 22:37:07

标签: ruby ruby-on-rails-4 paperclip

在向模型添加图片后更新模型的参数时遇到问题。

模型是用户,我使用回形针将图像添加到用户模型。

当我使用回形针上传图片时,它会正确存储在文件系统和数据库中,但之后我无法更改用户的任何其他参数。

这就是我更新属性的方法

  def settings
   @usergroups = User.find(session[:user_id]).user_groups
   if request.post?
     if @user.update_attributes(params[:user])
      flash[:notice] = t("flash.saved")
    end
   end
 end

这是上传图片的方法

  def uploadimage
    if request.post?
     @user = User.find(params[:userid])
     if @user.update_attribute(:image, params[:upload][:image])
       flash[:notice] = t("flash.saved")
       redirect_to :action => :settings
    end
  end
end

如果图片存储在db中,它在用户表中看起来像这样: enter image description here

模特有这个:

  has_attached_file :image,
                :path => ":rails_root/public/uploads/:id/:filename",
                :url => "/uploads/:id/:filename"

更新

  validates_attachment :image, :content_type => { :content_type => "image/jpg" }

图片上传表单和其他属性表单是两种不同的形式。

有人有想法会出错吗?

问题来自:

validates_attachment :image, :content_type => { :content_type => "image/jpg" }

是否有可能仅验证if:image属性是否已更改?

0 个答案:

没有答案