从您自己的gem创建路由条目

时间:2014-06-16 01:32:39

标签: ruby-on-rails ruby ruby-on-rails-4 routes

我正在编写一个gem,我将在Rails 4中使用它。我可以从我的Gem中添加路由而不是在rails项目中的config / routes.rb吗?我希望它在gem中,所以我可以将它包含在多个Rails项目中,而不必配置每个Rails项目,而是在gem中执行一次。这可能吗?怎么样?

即:

如果我的路线是:

get 'test' => 'users#test'

怎么会转化为我的宝石。如果我的宝石被用作引擎,就像他在答案中建议的那样:

module Blorgh
  class Engine < ::Rails::Engine
    get 'test' => 'users#test'
  end
end

这不起作用,我做错了什么?

2 个答案:

答案 0 :(得分:2)

是的,如果你把宝石变成引擎,就有可能。

阅读Getting Started with Engines指南。

答案 1 :(得分:2)

Ruby on Rails的

Read the Engine Guide。基本上,您要在config / routes.rb(在您的gem文件夹中)创建文件并添加以下内容:

YourGemName::Engine.routes.draw do
  get 'test' => 'users#test'
end