我正在使用rails 3.2.3并且遇到大规模分配问题。
我有一个酒店模型和一个Hphoto模型(与回形针集成)
我已经尝试了几乎所有的东西,但仍然会出现质量分配错误。
Can't mass-assign protected attributes: hphoto
请看一下。
酒店模特
has_many :hphotos, :dependent=>:destroy
accepts_nested_attributes_for <other models>, :hphotos
attr_accessible: <other attributes>, :hphoto_attributes
Hphoto模型
belongs_to :hotel
has_attached_file :photo,
:path => ":rails_root/public/system/:attachment/:id/:style/:filename",
:url => "/system/:attachment/:id/:style/:filename"
attr_accessible :hphoto_attributes
validates_attachment_presence :photo
validates_attachment_size :photo, :less_than => 2.megabytes
validates_attachment_content_type :photo, :content_type=> ['image/jpeg', 'image/png']
我的酒店管理员:
def new
@hotel = Hotel.new
@hotel.hphotos.build
respond_to do |format|
format.html
format.json { render :json => @hotel }
end
end
def create
@hotel = Hotel.new(params[:hotel])
<original scaffold code>
end
感谢您的想法
答案 0 :(得分:0)
声明必须使用复数:
attr_accessible: <other attributes>, :hphotos_attributes
On Rails 3.2.3我的erb看起来像这样:
<%= f.fields_for :hphotos, @hotel.hphotos do |photo_form| %>
<%= photo_form.label :size %>
<%= photo_form.text_field :size %>
<% end %>