0

我正在尝试使用 ruby​​-1.9.2 使用以下命令从 rails 3.2 应用程序初始化 mongoid:

rails g mongoid:config

当我发出命令时,我收到以下错误:

/Users/paulcowan/.rvm/gems/ruby-1.9.2-p290/gems/bundler-1.0.18/lib/bundler/rubygems_integration.rb:143:in block in replace_gem': railties is not part of the bundle. Add it to Gemfile. (Gem::LoadError) from /Users/paulcowan/.rvm/gems/ruby-1.9.2-p290/bin/rails:18:in'

我的 gem 文件如下所示:

source 'https://rubygems.org'

gem 'rails', '3.2.3'

group :assets do
  gem 'sass-rails',   '~> 3.2.3'
  gem 'coffee-rails', '~> 3.2.1'
  gem 'uglifier', '>= 1.0.3'
end
gem 'jquery-rails'

# structures
gem 'json',                 '~> 1.6.3'
gem 'rabl',                 '~> 0.5.1'

# use thin instead of WEBrick
gem 'thin'

# MongoDB..
gem 'bson_ext'
gem 'mongoid'

gem "haml", ">= 3.1.4"
gem "haml-rails", ">= 0.3.4", :group => :development
gem "bootstrap-sass", ">= 2.0.1"

gem 'inherited_resources'

group :development, :test do
  gem 'guard'
  gem 'growl'
  gem 'rspec-rails', '2.8.1'
  gem 'webrat', '0.7.3'
  gem 'factory_girl_rails', '1.7.0'
  gem 'rdoc', '~> 3.12'
  gem "database_cleaner"
  gem "mongoid-rspec"
  gem "pry-rails", "~> 0.1.6"
end

group :test do
  gem 'jasminerice', :git => "https://github.com/bradphelan/jasminerice.git", :branch => 'master'
  gem 'guard-jasmine', :git => "https://github.com/netzpirat/guard-jasmine.git", :branch => 'master'
  gem 'capybara',          '~> 1.1.2'
  gem 'fivemat'
end
4

1 回答 1

1

我有一个新的 Rails 3.2.3 项目和你的 Gemfile 的各种捆绑器/gem 问题。我能够通过删除 Gemfile.lock 并重新运行“捆绑安装”来克服它。附上我所做的日志,其中包括删除 ActiveRecord。希望这会有所帮助。

$ ruby -v
ruby 1.9.3p125 (2012-02-16 revision 34643) [x86_64-darwin11.3.0]
$ rails new free-11479-mongoid-rails-g
$ cd free-11479-mongoid-rails-g

Gemfile as per user

$ bundle install
You have requested:
  json ~> 1.6.3

The bundle currently has json locked at 1.7.1.
Try running `bundle update json`

$ bundle update json
Bundler could not find compatible versions for gem "multi_json":
  In Gemfile:
    rabl (~> 0.5.1) ruby depends on
      multi_json (~> 1.0.3) ruby

    guard-jasmine (>= 0) ruby depends on
      multi_json (1.3.4)

$ rm Gemfile.lock
$ bundle install
$ rails g mongoid:config
     create  config/mongoid.yml
---------
Assuming that you want to excise ActiveRecord...

dereference ActiveRecord

    config/application.rb
        #config.active_record.whitelist_attributes = true
    config/environments/development.rb
        #config.active_record.mass_assignment_sanitizer = :strict
        #config.active_record.auto_explain_threshold_in_seconds = 0.5
    config/environments/development.rb
        #config.active_record.mass_assignment_sanitizer = :strict
    test/test_helper.rb
      #fixtures :all

$ rm database.yml

config/application.rb
    #require 'rails/all'
    require "action_controller/railtie"
    require "action_mailer/railtie"
    require "active_resource/railtie"
    require "rails/test_unit/railtie"

$ rake test # passes
于 2012-05-07T14:47:47.110 回答