我有一个名为 Questions Engine 的引擎,它具有 rapidfire 作为依赖项。Rapidfire 也是一个引擎。
在 question_engine.gemspec 中,我将 gem 作为开发和一般依赖项
s.add_dependency "rapidfire", "~> 2.0.0"
s.add_development_dependency "rapidfire", "~> 2.0.0"
在我的根应用程序 gemfile 中,我正在将问题引擎加载到里面,我的根应用程序在它的gemlist
group :development, :test do
gem 'question_engine', path: "vendor/engines/QuestionEngine"
end
rapidfire 附带以下说明
$ bundle install
$ bundle exec rake rapidfire:install:migrations
$ bundle exec rake db:migrate
And if you want to customize rapidfire views, you can do
$ bundle exec rails generate rapidfire:views
Usage
Add this line to your routes will and you will be good to go!
mount Rapidfire::Engine => "/rapidfire"
在我的根应用程序配置/路由文件中,我有这些
Rails.application.routes.draw do
devise_for :admin_users, ActiveAdmin::Devise.config
ActiveAdmin.routes(self)
root 'home#index'
devise_for :users
mount FormulaEngine::Engine => "/formula_engine"
mount QuestionEngine::Engine, at: 'question_engine'
mount Rapidfire::Engine, at: "/rapidfire"
end
当我耙路线时,我收到此错误
NameError: uninitialized constant Rapidfire
它在两天前工作。我检查了我的提交,从那以后我只处理服务器的东西。
rapidfire 生成器在根应用程序中运行良好。我已经迁移了表。是的,迁移文件没有被复制到根应用程序,但我看不到根应用程序如何看不到 rapidfire 存在?
我正在使用rails 4.2
. gem 根据他们的文档支持 rails 4 版本。
做了捆绑安装,收到此消息
$HOME/vendor/engines/QuestionEngine 的 question_engine 没有有效的 gemspec。这可以防止 bundler 安装 bin 或本机扩展,但这可能不会影响其功能。来自 Rubygems 的验证消息是:“FIXME”或“TODO”不是描述
这是我的宝石规格
$:.push File.expand_path("../lib", __FILE__)
# Maintain your gem's version:
require "question_engine/version"
# Describe your gem and declare its dependencies:
Gem::Specification.new do |s|
s.name = "question_engine"
s.version = QuestionEngine::VERSION
s.authors = ["somebody"]
s.email = ["somebody@gmail.com"]
s.homepage = "TODO"
s.summary = "TODO: Summary of QuestionEngine."
s.description = "TODO: Description of QuestionEngine."
s.license = "MIT"
s.files = Dir["{app,config,db,lib}/**/*", "MIT-LICENSE", "Rakefile", "README.rdoc"]
s.test_files = Dir["test/**/*"]
s.add_dependency "rails", "~> 4.2.0"
s.add_dependency "rapidfire", "~> 2.0.0"
#s.add_development_dependency "rapidfire", "~> 2.0.0"
s.add_development_dependency "sqlite3"
end