2014-12-01 37 views
0

我目前处于一种情况,我的Rails应用程序中有很多Rails引擎。为了解决架构上的问题,我们开始使用一个模块将我们的模型/视图/控制器命名空间远离应用程序中的其他Rails引擎,如Devise,AlchemyCMS和Spree。指向默认控制器模块的点路径

的问题是,当你的main_app创建一个新的路线我发现,我总是要做到这一点:

get '/cart' => 'primary/orders#edit' 

相反的:

get '/cart' => 'orders#edit' 

我尝试使用一个命名空间和我认为它会帮助:

namespace :my_application, path: nil do 
    get '/cart' => 'orders#edit' 
end 

哪个产生了我想要的路线,但它引起的一切途径是像这样:

main_app.my_application_cart_path 

相反的:

main_app.cart_path 

有谁知道如何为航线提供默认控制器

回答

1

为什么不使用范围,而不是命名空间:

scope '/my_application' do 
    get '/cart' => 'orders#edit' 
end