我正在编写Rails engine
,但我不知道如何扩展我的config / application.rb
我想我必须以某种方式获取应用程序名称 任何想法?
require File.expand_path('../boot', __FILE__)
require 'rails/all'
# Require the gems listed in Gemfile, including any gems
# you've limited to :test, :development, or :production.
Bundler.require(:default, Rails.env)
module application_name
class Application < Rails::Application
end
end
答案 0 :(得分:2)
对于--full和--mountable引擎
这将为您生成。
module engine_name
class Engine < ::Rails::Engine
end
end
在主要应用程序中添加gemfile
gem 'engine_name', path: "/path/to/engine_name"
在您的应用程序中配置config / routes.rb文件
mount engine_name::Engine, at: "/<mount_point_you_choose>"
http://guides.rubyonrails.org/engines.html
取自上面的链接......
--mountable选项告诉生成器您要创建“可安装”和名称空间隔离的引擎。此生成器将提供与--full选项相同的骨架结构,并将添加:
资产清单文件(application.js和application.css) 命名空间的ApplicationController存根 命名空间的ApplicationHelper存根 引擎的布局视图模板 名称空间隔离到config / routes.rb: