Rails多对多fields_for:如何访问fields_for值?

时间:2010-10-14 17:21:40

标签: ruby-on-rails nested-forms fields-for

我正在尝试在rails 3中创建一组嵌套(多对多)表单。感谢fields_for,一切正常,但我需要在每个嵌套表单上面添加一个标题。该标题在每个相应的嵌套表单中具有profession_type.name字段的值(具有预填充值)。

我有一个heckuva时间从fields_for表单对象中提取该profession_type.name值。我需要知道的是:

a。)是否可以从fields_for对象中提取预先填充的值,如果是,如何提取?

b。)如何在每个| specform |的相关“fields_for”条目上创建多对多嵌套表单循环?价值,而不是全部?

使用任何一种方法(或替代方法)的任何建议都非常赞赏。

<% @professional.professional_specialties.each do |specform| %>
    <%= specform.profession_type.name %>

    <% f.fields_for :professional_specialties do |specialtyform| %>
        <%= specialtyform.label :profession_type %>
        <%= specialtyform.text_field :profession_type %>
        <%= specialtyform.label :qualifications %>
        <%= specialtyform.text_field :qualifications %>
        <%= specialtyform.label :license_number %>
        <%= specialtyform.text_field :license_number %>
        <%= specialtyform.label :enabled %>
        <%= specialtyform.check_box :enabled %>
    <% end %>
<% end %>

1 个答案:

答案 0 :(得分:4)

FormBuilder具有属性访问器,如:object_name和:object。

针对您的特定问题,请尝试使用: &lt;%= specform.object.name%&gt;