为什么路由方法在我的布局中不起作用?

时间:2012-09-21 23:19:04

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

Rake Routes列表:

program_reports GET    /programs/:program_id/reports(.:format)               reports#index

然后将其放入布局文件(programs.html.erb)

<li><%= link_to "Reports", program_reports(@program_id) %></li>

给了我一个错误:

undefined method `program_reports' for #<#<Class:0x007fe98d44baf0>:0x007fe98d465ce8>

我不知道这是否重要,但请注意布局是嵌套布局结构的一部分,因此视图使用以下内容呈现:

respond_with @partocipants do |format|
  format.html {
    render layout: 'layouts/progtabs'
  }
end

知道这里有什么问题吗?

1 个答案:

答案 0 :(得分:2)

'program_reports'路由为您的视图提供'program_reports_path'和'program_reports_url'。尝试:

<li><%= link_to "Reports", program_reports_path(@program_id) %></li>