【发布时间】:2012-02-02 01:03:24
【问题描述】:
我的路线:
resources :events, :path_names => { :new => "organize" } do
resources :forums
end
通过这些路由,我将获得像/events/:event_id/forums/organize 这样的网址。我不希望 path_names 传播到我的嵌套路由...我必须为它们重新定义 path_names 吗?还是使用scope?
resources :events, :path_names => { :new => "organize" } do
scope :path_names => { :new => "new" } do
resources :forums
# other nested resources...
end
end
或者(我最喜欢的,直到你找到更好的解决方案;))
resources :events, :path_names => { :new => "organize" }
resources :events, :only => [] do
#nested resources...
end
有没有更优雅的方法来做到这一点?如果你不这么认为,你也可以告诉我你认为哪一个是最好的。
【问题讨论】:
-
用同样的方式为论坛定义
:path_names怎么样? -
这是一种选择,但不是我认为的最佳选择。因为我有很多嵌套资源,不仅仅是论坛。所以最坏的情况是,我会使用其他两种解决方案。
标签: ruby-on-rails ruby-on-rails-3 routes nested-routes