我需要能够将一些路线添加到一个或多个动态路径。
例如paths = [ "foo/news", "bar/news" ]
。两者都需要走同样的路线。
应该是这样的:
paths.each do |path|
namespace path, module: "news" do
root :to => "welcome#index"
resources :articles
end
end
但它给了我一个错误:
rake aborted!
Invalid route name: 'foo/news'
我尝试了很多不同的东西,其中大多数都是在启动服务器时失败了,有些工作但是只为我提供了第一条路径的好路线。
之前有人做过这样的事吗?
我希望能够使用路径,所以当我进入'bar/news'
时:
news_article_path( @artice )
会给我bar/news/articles/1
(而不是foo/news/articles/1
)
答案 0 :(得分:0)
问题是你要在循环中添加'/ news'部分。试试这个:
paths = [ "foo", "bar" ]
paths.each do |path|
namespace path, module: "news" do
namespace 'news', module: false do
root :to => "welcome#index"
resources :articles
end
end
end