我正在编写一个可安装的 Rails 3 引擎,并将我的引擎的路线与主机应用程序的路线相结合。但是,主机应用程序的路线优先于我的引擎路线。有没有办法可以覆盖主机应用程序的路由(特别是根路由)?
这是我的引擎的路线my_enging/config/routes.rb
:
MyEngine::Engine.routes.draw do
root :to => "home#index"
end
# Mount engine routes to host application
Rails.application.routes.draw do
mount MyEngine::Engine, :at => "/"
end
这是 的结果rake routes
,主机的根位于顶部:
root / welcome#index
my_engine / MyEngine::Engine
root / home#index
Spree是一个可以做到这一点的宝石,但我无法找到他们是如何实现这一点的。