Rails嵌套表单与局部变量

时间:2012-12-26 09:28:03

标签: ruby-on-rails ruby-on-rails-3

在我的_cart_item.html.erb中我需要显示与cart_item相关联的产品名称

这是我的表格:

<%= form_for(@cart) do |f| %>
    <%= f.fields_for :cart_items do |builder| %>
        <%= render "cart_item", :f => builder %>
    <% end %>
    <p>
        <%= f.submit :submit %>
    </p>
<% end %>

这是_cart_item.html.erb

<p>
    <%= f.label :price %>
    <%= f.text_field :price %>
</p>
<p>
    <%= f.label :quantity %>
    <%= f.text_field :quantity %>
</p>

我正在寻找的是这样的

<h3><%= cart_item.product.name %></h3>
<p>
    <%= f.label :price %>
    <%= f.text_field :price %>
</p>
<p>
    <%= f.label :quantity %>
    <%= f.text_field :quantity %>
</p>

但是如何将cart_item.product.name传递给fields_for / render?

1 个答案:

答案 0 :(得分:0)

f.object包含您的购物车商品,因为f是上下文中的购物车商品构建商。

所以:

f.object.product.name