0

我有一个嵌套表单,它使用部分方法来呈现嵌套模式的字段

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

0 回答 0