0

我有一个模型驱动程序,它与索赔有很多关系,我希望有一个表格,客户可以输入他们的详细信息,以及他们过去提出的一些索赔。

在模型中,我有:

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 %>

当我提交表单时,问题发生了,我得到了 Claim(#3213231311) 预期,得到了 Array(#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"}

由于声明与声明之间存在 has_many 关系,因此声明不应包含在如下数组中:

"claims" => [{.....},{......}]

我一直在努力处理表格,但仍然无法声称要作为数组发送,有人帮忙吗?

4

1 回答 1

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 %>

希望它会有所帮助。谢谢

于 2013-07-24T11:21:39.503 回答