В обычных формах в Ruby on Rails при использовании form_for для построения модели, как указано в документах API, form_for не создает эксклюзивную область, и можно использовать функции form_tag в форме form_for.
Например:
<% form_for :person, @person, :url => { :action => "update" } do |f| %>
First name: <%= f.text_field :first_name %>
Admin? : <%= check_box_tag "person[admin]", @person.company.admin? %>
<% end %>
Однако во вложенной форме метки и поля имеют имена, которые автоматически генерируются Rails, чтобы быть связанными с данной вложенной моделью и не перекрываться, если одновременно создается несколько вложенных моделей. Можно ли по-прежнему использовать функции form_tag?
Я хотел бы сделать что-то вроде этого:
<% person_form.fields_for :children do |child_form| %>
Name: <%= child_form.text_field :name %>
Give up for Adoption?: <%= check_box_tag "adoption_" + child_form_index, false %>
<% end %>
Однако я не знаю, как получить доступ к индексу child_form, чтобы убедиться, что check_box_tag имеет уникальное значение, если есть несколько дочерних элементов.
Возможно ли то, что я пытаюсь сделать?