我在我的用户模型(Devise)中添加了“头像”,并收到错误Can't mass-assign protected attributes: avatar
在我的用户模型中,我添加了:
attr_accessible :avatar_uid, :avatar_name
image_accessor :avatar
表单(simple_form)有:html => {:method => :put,:multipart => true}和fields:
<%= f.file_field :avatar %>
<%= f.hidden_field :retained_avatar %>
<%= f.check_box :remove_avatar %>
将:avatar
添加到attr_accessible
会解决质量分配错误,但这些字段不会保存在用户表中。
答案 0 :(得分:0)
您还需要在attr_accessible列表中添加头像,以便进行批量分配。
所以只需用
替换attr_accessible列表 attr_accessible :avatar_uid, :avatar_name, :avatar
image_accessor 由dragon-fly gem提供,它为attr_accessor等列出的属性提供读/写。
检查这个帖子以了解attr_accessible和attr_accessor之间的更多差异