0

我正在使用 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

谢谢你的想法

4

1 回答 1

0

该语句必须使用复数:

attr_accessible: <other attributes>, :hphotos_attributes

在 Rails 3.2.3 上,我的 erb 如下所示:

<%= f.fields_for :hphotos, @hotel.hphotos do |photo_form| %>  
    <%= photo_form.label :size %>  
    <%= photo_form.text_field :size %>  
<% end %>  
于 2012-05-09T17:02:21.900 回答