Rails:使用嵌套资源构建link_to链接

时间:2015-08-08 14:24:47

标签: ruby-on-rails ruby-on-rails-4

我的 routes.rb 中有三个模型:

  resources :products do
    resources :departments, :revenues
  end

我试图链接到部门 show.html 的产品部门,如下所示:

<% @products.each do |product| %>
      <%= link_to product_department_path(:id => product.id) do %><li><%= product.name %></li><% end %>
    <% end %>

这是在给我这样的HTML:

<ul>

      <a href="/products/2/departments/1"><li>Product1</li></a>
      <a href="/products/2/departments/2"><li>Product2</li></a>
      <a href="/products/2/departments/3"><li>Product3</li></a>
      <a href="/products/2/departments/5"><li>Product4</li></a>

  </ul>

我真正需要的是:

<ul>

      <a href="/products/1/departments/"><li>Product1</li></a>
      <a href="/products/2/departments/"><li>Product2</li></a>
      <a href="/products/3/departments/"><li>Product3</li></a>
      <a href="/products/4/departments/"><li>Product4</li></a>

  </ul>

1 个答案:

答案 0 :(得分:0)

你的代码有点冗长,所以我简化了它。我想你想要product_departments_path

<li>
  <%= link_to product.name, product_departments_path(product) %>
</li>