У меня есть вложенная форма, которая использует частичный метод для рендеринга полей для вложенного модала
<%= nested_form_for [:admin, @proforma] do |f| %>
<%= f.error_messages %>
<p>
<%= f.label :name %><br />
<%= f.text_field :name %>
</p>
<%= f.fields_for :elements %>
<p><%= f.link_to_add "Add element to proforma", :elements %></p>
<p><%= f.submit %></p>
<% end %>
В моем разделе я хочу получить ссылку для редактирования вложенной модели, например,
<div class='element-children'>
<p>
<%= collection_select(:element, :component_id, Component.all, :id, :name) %>
<%= f.text_field :name %>
<%= f.text_field :detail %>
<%= link_to 'Edit', [:admin, edit_element_path(@element)] %> |
<%= f.link_to_remove "Destroy" %>
</p>
</div>
Однако @element
недоступно в частичном. Как я могу ссылаться на правильный элемент?
Редактировать ...
Решение с использованием комментария от Брэдли
<div class='element-children'>
<p>
<%= collection_select(:element, :component_id, Component.all, :id, :name) %>
<%= f.text_field :name %>
<%= f.text_field :detail %>
<%= link_to 'Edit', edit_admin_element_path(f.object.id) %> |
<%= f.link_to_remove "Destroy" %>
</p>
</div>