dagda1
dagda1

Reputation: 28790

Rails g failing for mongoid commands

I am trying to initialise mongoid from a rails 3.2 application using ruby-1.9.2 with the following command:

rails g mongoid:config

When I issue the command, I get the following error:

/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'

My gem file looks like this:

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

Upvotes: 0

Views: 1751

Answers (1)

Gary Murakami
Gary Murakami

Reputation: 3402

I had various bundler/gem problems with a fresh Rails 3.2.3 project followed by your Gemfile. I was able to get past it by removing Gemfile.lock and rerunning 'bundle install'. The log of what I did is attached and it includes excising ActiveRecord. Hope that this helps.

$ 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

Upvotes: 1

Related Questions