在向模型添加图片后更新模型的参数时遇到问题。
模型是用户,我使用回形针将图像添加到用户模型。
当我使用回形针上传图片时,它会正确存储在文件系统和数据库中,但之后我无法更改用户的任何其他参数。
这就是我更新属性的方法
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
模特有这个:
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属性是否已更改?