我有一个与索赔有许多关系的模型驱动程序,我希望有一个表单,客户可以输入他们的详细信息,以及他们过去的一些声明。
在模型中,我有:
has_many :claims
并以我输入的形式:
<%= semantic_form_for @driver do |f| %>
<%= f.input :name %>
.......
<%= f.inputs :for => :claims do |c| %>
<% c.input :happen_date %>
<% c.input :claim_details %>
...........
<% end %>
<% end %>
当我提交表格时,问题就出现了,我得到了索赔(#3213231311)预期,得到了数组(#70299228017580)
我看了一下表格,我看到了:
{"utf8"=>"✓",
"authenticity_token"=>"VD3lt+LXZoA94YoL3PkI0frTH5EzT4vs/lZhzQhp0IQ=",
"driver"=>{
"name"=> "test tester",
.......
"claims"=>{"happend_date(3i)"=>"10",
"claim_date(2i)"=>"10",
"claim_date(1i)"=>"2012",
"claim_details"=>"dsadsadsadas"}},
"commit"=>"Next"}
由于与声明之间存在着非常多的关系,因此不应将声明包含在以下数组中:
"claims" => [{.....},{......}]
我一直在表单上努力工作,仍然无法将声明发送为阵列,任何人都可以帮忙吗?
答案 0 :(得分:2)
您是否在“驱动程序”模型中包含此内容: -
accepts_nested_attributes_for :claims
编辑您的表单,如:
<%= semantic_form_for @driver do |f| %>
<%= f.input :name %>
<%= f.semantic_fields_for :claims do |c| %>
<% c.input :happen_date %>
<% c.input :claim_details %>
<% end %>
<% end %>
希望它会有所帮助。感谢