Rails 3.2 gem nested_form: как создать link_to edit_model_path () в fields_for для частичного - PullRequest
0 голосов
/ 13 января 2012

У меня есть вложенная форма, которая использует частичный метод для рендеринга полей для вложенного модала

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