Ruby on rails 未定义的方法'foo_path';(我还没有打电话给它)

Ruby on rails 未定义的方法'foo_path';(我还没有打电话给它),ruby-on-rails,scaffolding,Ruby On Rails,Scaffolding,我正在构建一个没有资源路由的非常简单的rails应用程序。 我没有调用trans\u application\u path,但是view返回了一个错误未定义的方法“trans\u application\u path”,用于… 这是我的密码。有什么想法吗 控制器 # GET /trans/drafts def drafts_index @trans_drafts = TransApplication.where(applied: false) end # GET /trans/

我正在构建一个没有资源路由的非常简单的rails应用程序。 我没有调用
trans\u application\u path
,但是view返回了一个错误
未定义的方法“trans\u application\u path”,用于…

这是我的密码。有什么想法吗

控制器

# GET /trans/drafts
  def drafts_index
    @trans_drafts = TransApplication.where(applied: false)
  end

# GET /trans/apps
  def apps_index
    @trans_apps = TransApplication.where(applied: true)
  end
查看

<p id="notice"><%= notice %></p>

<h1>drafts_index</h1>

<table>
  <thead>
    <tr>
      <th>Name</th>
      <th>Department</th>
      <th>Month</th>
      <th>Applied</th>
      <th colspan="3"></th>
    </tr>
  </thead>

  <tbody>
    <% @trans_drafts.each do |trans_draft| %>
      <tr>
        <td><%= trans_draft.name %></td>
        <td><%= trans_draft.department %></td>
        <td><%= trans_draft.month %></td>
        <td><%= trans_draft.applied %></td>
        <td><%= link_to 'Show', trans_draft %></td>
      </tr>
    <% end %>
  </tbody>
</table>

<br>

草稿索引 名称 部门 月 应用
我所做的

  • 生成脚手架
  • 停止使用资源路由并修改控制器

您正在调用
trans\u application\u path
<代码>链接到将对url使用
多态路径
,如果您没有提供。这将查看给定对象的类(
trans\u draft
),并调用该类的路径帮助器


如果您希望请求到达控制器,则需要一些路由。如果不是资源路径(或等效路径),则将您想要的url传递到您的
链接中,而不是对象。

谢谢您的回答!我应该提一件事。我尝试删除所有包含“link_to”的行,但问题没有解决…请查看错误的回溯。它会告诉你哪一行产生了错误。对不起,当我重新启动服务器时,问题已经解决了。这似乎是由于缓存。。。
<td><%= link_to 'Show', trans_draft %></td>