在Rails中更正link_to路由

时间:2013-10-29 13:53:15

标签: ruby-on-rails

不确定我错过了什么。首先,如果我手动导航到它,这是一个有效的路线...

/orientations/1/registrations

这显示了与第一个方向相关的所有注册。现在我想在我的视图中创建一个link_to到这些路由。这是耙路线的输出......

http://pastie.org/pastes/8440065/text

在我看来,我正在努力......

 <%= link_to "R", orientation_registration_path(orientation) %></li>

...而我得到的错误是......

No route matches 
{
  :action         =>  "show", 
  :controller     =>  "registrations", 
  :orientation_id =>  #<Orientation 
    id: 1, 
    class_date: "2013-10-17",  
    class_time: "11:30am", 
    seats: 30, 
    active: true, 
    created_at: "2013-10-28 14:22:42", 
    updated_at: "2013-10-28 14:22:42">
}

我错过了什么?

3 个答案:

答案 0 :(得分:1)

仔细检查路线名称!

在这种情况下,匹配所需网址的路线为:

orientation_registrations GET    /orientations/:orientation_id/registrations(.:format)          registrations#index

注意registrations,而不是registration

答案 1 :(得分:1)

查看您的佣金路线输出,您需要使用的路径是

orientation_registrations_path(orientation)

这将生成正确的链接。从rake路线输出:

orientation_registrations GET    /orientations/:orientation_id/registrations(.:format)          registrations#index

答案 2 :(得分:0)

您遗失了s我的朋友

 <%= link_to "R", orientation_registrations_path %></li>