Rails 3引擎:如何更改路由的优先级

时间:2011-04-01 03:22:07

标签: ruby-on-rails ruby-on-rails-3 rails-engines

我正在努力将我的某个应用程序的一些功能提取到引擎中。 似乎会生成应用中的路由,然后生成引擎的路由。最终的结果是我的引擎路线被认为是低优先级,我的应用程序路线在它们到达引擎路线之前正在吃掉所有请求。我有办法控制发动机路线的优先级吗?

2 个答案:

答案 0 :(得分:1)

我通过将我的路线移动到我的引擎中的类方法并将它们加载到基本应用程序的路径文件的顶部来解决这个问题:Overriding named routes provided by Rails 3 Engines

答案 1 :(得分:0)

根据这个讨论: http://groups.google.com/group/blacklight-development/browse_thread/thread/a22ee4636a70b485

它曾经是另一种方式。

您可以通过深入研究修复它们所做的更改来弄清楚如何扭转它。

具体来说,这个有一个hack通过加载Routing :: RouteSet类中的类来覆盖带有app路由的插件路由 http://robots.thoughtbot.com/post/159805560/tips-for-writing-your-own-rails-engine

显然它是较旧的轨道 - 但我认为你可能会得到一些灵感来满足你自己的需求:)