嵌套的RESTful路由不起作用(RoutingError)

时间:2011-08-13 19:29:18

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

我在设置路线时遇到了麻烦。向您展示代码可能是最简单的。这是我的routes.rb文件:

resources :leagues do
  get 'delete', :on => :member

  resources :league_relations do
    get 'delete', :on => :member
  end
end

每个联盟has_many:league_relations,每个LeagueRelation属于:联盟。删除路由只是在销毁操作之前的确认。

我正在尝试使用Rails的路径助手,但由于某些原因它们无法正常工作。具体来说,我试图这样做:

new_league_league_relation_path

但这会引发错误:

  

没有路线匹配{:action =>“new”,:controller =>“league_relations”}

从技术上讲,错误是正确的。没有路线匹配'league_relations #new',但不应该由此助手创建的URL

  

/联赛/:ID / league_relations /新

感谢您的帮助,我真的很感激。

1 个答案:

答案 0 :(得分:1)

实际上,路线完全符合您的预期。你只是忘了添加:league_id

这将有效:

new_league_league_relation_path(:league_id => 1)