2012-01-04 19 views
4

マイルート:これらのルートでレール、path_namesおよびネストされたリソース

resources :events, :path_names => { :new => "organize" } do 
    resources :forums 
end 

、私は/events/:event_id/forums/organizeのようなURLを取得します。 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 

これを行うにはよりエレガントな方法はありますか?あなたがそうは思わないなら、あなたの意見でどちらが一番いいか教えてください。

+0

何 '定義について:同じ方法で、フォーラムのpath_names'を? –

+0

それはオプションですが、私が思う最良のものではありません。なぜなら、フォーラムだけではなく、ネストされたリソースがたくさんあるからです。だから最悪のシナリオでは、私は2つの他のソリューションを使用します。 – Robin

答えて

0

私は最後のオプションのために行ってきました:

resources :events, :path_names => { :new => "organize" } 
resources :events, :only => [] do 
    #nested resources... 
end 
関連する問題