rails 3.1 fields_for



这是fields_for块在orders控制器的edit视图

  <%= form_for @order do |f| %>
    <%= f.fields_for :order_fields do |builder| %>
      <%= builder.text_field :value %>
    <% end %>
  <% end %>

我遇到的问题是,我想使用每个循环来显示从循环的信息,但然后我得到的形式显示不止一次。这是因为我使用了accepts_nested_attributes_for :order_fields语句。

在我的order_fields表中有一个名为name的列,我想在表单中显示信息。我该怎么做呢?从我的数据库中value列的信息已经显示在我的表单中。

如果我做了

<%= f.fields_for :order_fields do |builder| %>
  <%= builder.text_field :name %>
  <%= builder.text_field :value %>
<% end %>

它显示信息从两个列相邻,但我希望:name的信息不是在一个文本框或任何东西。我希望它像我要做的那样显示:

<% @order.order_fields.each do |field| %>
  <%= field.name %>
<% end %>

我希望这是有意义的:)谢谢你。

可以通过调用。object来访问|builder|上的对象

<%= f.fields_for :order_fields do |builder| %>
  <%= builder.object.name %>
  <%= builder.text_field :value %>
<% end %>

相关内容

  • 没有找到相关文章

最新更新