【问题标题】:Create a routes entry from your own gem从您自己的 gem 创建一个路由条目
【发布时间】:2014-08-05 19:16:12
【问题描述】:

我正在编写一个 gem,我打算将它与 Rails 4 一起使用。我是否可以从我的 Gem 而不是从我的 rails 项目中的 config/routes.rb 添加路由?我希望它位于 gem 中,因此我可以将它包含在多个 Rails 项目中,而无需配置每个 Rails 项目,而不是在 gem 中执行一次。这可能吗?如何实现?

即:

如果我的路线是:

get 'test' => 'users#test'

这将如何转化为我的宝石。如果我的 gem 被用作引擎,就像 RB 在他的回答中建议的那样:

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

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

【问题讨论】:

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


    【解决方案1】:

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

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

    【讨论】:

      【解决方案2】:

      是的,如果你让你的 gem 成为一个引擎,这是可能的。

      阅读Getting Started with Engines 指南。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-11-26
        • 1970-01-01
        • 1970-01-01
        • 2012-05-07
        • 2010-10-30
        • 2011-05-06
        相关资源
        最近更新 更多