0

我有这个嵌套的资源

  resources :products do
     resources :senders
  end 

在我的产品/索引视图中,我有这个

...
..
.
<td><%= link_to 'Show Email Addresses', product_senders_path(product) %> </td>
.
..
...

这似乎有效,并将我重定向到该产品的发件人。现在出于某种奇怪的原因,我得到了这个:

 NameError in Senders#index

undefined local variable or method `sender_path' for #<#<Class:0x00000003cb1f58>:0x00000003b46e48>

Extracted source (around line #18):

15:     <td><%= sender.product_id %></td>
16:     <td><%= sender.name %></td>
17:     <td><%= sender.email %></td>
18:     <td><%= link_to 'Show', sender %></td>
19:     <td><%= link_to 'Edit', edit_sender_path(sender) %></td>
20:     <td><%= link_to 'Destroy', sender, confirm: 'Are you sure?', method: :delete %></td>
21:   </tr>

这是我的发件人/索引文件:

<h1>Listing senders</h1>

<table>
  <tr>
    <th>Application</th>
    <th>Name</th>
    <th>Email</th>
    <th></th>
    <th></th>
    <th></th>
  </tr>

<% @senders.each do |sender| %>
  <tr>
    <td><%= sender.product_id %></td>
    <td><%= sender.name %></td>
    <td><%= sender.email %></td>
    <td><%= link_to 'Show', sender %></td>
    <td><%= link_to 'Edit', edit_sender_path(sender) %></td>
    <td><%= link_to 'Destroy', sender, confirm: 'Are you sure?', method: :delete %></td>
  </tr>
<% end %>
</table>

<br />

为什么我收到此错误?在它工作正常之前

4

1 回答 1

0

由于发件人只有嵌套路由,因此没有edit_sender_path(sender)助手,只有edit_product_sender_path(product, sender)

您可以通过执行查看所有应用程序路由助手的列表rake routes

于 2012-08-25T18:18:56.160 回答