2012-08-24 57 views
2

我需要能够将一些路由添加到一个或多个动态路径。例如,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' 

我尝试了很多不同的东西,大多未能在启动服务器,以及一些工作,但只给我第一条路的好路线。

之前有人做过这样的事吗?

我希望能够还使用路径,所以当IM在'bar/news'

news_article_path(@artice)会给我bar/news/articles/1(而不是foo/news/articles/1

回答

0

的问题是,您要添加的“/新闻”部分循环。试试这个:

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 
相关问题