防止应用程序路由阻止Rails 3中的插件路由

时间:2010-12-08 20:53:27

标签: ruby-on-rails ruby ruby-on-rails-3 routes ruby-on-rails-plugins

从Rails 3开始,插件路由似乎是now loaded after application routes,这意味着我的默认路由会阻塞admin_data等插件。

目前我通过在routes.rb中使用以下丑陋的黑客来避免此问题,该问题适用于在config/routes.rb中定义其路由的插件:

# Load plugin routes
$LOAD_PATH.each do |path|
  path = File.dirname(path)
  file = File.join path, 'config', 'routes.rb'
  if File.exists? file
    require file[0..-4]
  end
end

# Default root
match ':a', :to => 'foo#bar'

将默认路由设置为低于插件优先级的正确方法是什么?

1 个答案:

答案 0 :(得分:0)

我相信引擎而不是插件是在Rails 3中添加类似这样的应用程序功能的首选方式。你可以尝试更现代的基于引擎的rails_admin而不是admin_data,如果这是你唯一的插件像这样重复使用