Car*_*ssi 3 forms ruby-on-rails nested-forms mass-assignment
这是我嵌套表单的相关部分:
<div class="field">
<%= f.fields_for "@partcode" do |p|%>
<%= p.label "partcode"%><br />
<%= p.text_field :partcode %>
<% end %>
</div>
Run Code Online (Sandbox Code Playgroud)
我已经在我的模型中有这个:
attr_accessible :partcode,
:description
Run Code Online (Sandbox Code Playgroud)
但当我在表单中输入内容时,我收到此错误:
Can't mass-assign protected attributes: @partcode
Run Code Online (Sandbox Code Playgroud)
这是我的零件代码模型:
class Partcode < ActiveRecord::Base
attr_accessible :partcode,
:description
validates :partcode,
:description,
:presence => true
belongs_to "goods_ins"
accepts_nested_attributes_for "goods_ins"
end
Run Code Online (Sandbox Code Playgroud)
这是我的商品在模型中的所有代码:
class GoodsIn < ActiveRecord::Base
attr_accessible :c4lpono,
:courier,
:deliverydate,
:deliverynoteno,
:description,
:destination,
:notes,
:partcode,
:quantity,
:signedby,
:suppliername
validates :deliverydate,
:deliverynoteno,
:destination,
:quantity,
:signedby,
:suppliername,
:presence => true
has_many :suppliers
has_many :partcodes
accepts_nested_attributes_for :partcodes
end
Run Code Online (Sandbox Code Playgroud)
这也是new我的零件代码控制器的一部分:
def new
@partcode = Partcode.new
respond_to do |format|
format.html # new.html.erb
format.json { render :json => @partcode }
end
end
Run Code Online (Sandbox Code Playgroud)
你不应该:partcode_attributes到attr_accessible(在GoodsIn Model中),如下所示:
attr_accessible :partcode_attributes
Run Code Online (Sandbox Code Playgroud)
假设您的模型关联是这样配置的.希望能帮助到你
| 归档时间: |
|
| 查看次数: |
2457 次 |
| 最近记录: |