プロジェクトにrspecとmongoidをインストールしようとしましたが(「RailsDeep Dive」という本の例に従って)、RSpecからジェネレーターを実行しようとするとエラーが発生します。
これがgemfileです:
gem 'rails', '3.2.11'
gem 'devise', "~> 1.4.2"
gem 'mongoid', "~> 2.1.8"
gem 'mongoid_spacial', '~> 0.2.13'
gem 'haml', '~> 3.1.2'
gem 'bson_ext', '~> 1.3.1'
gem 'rails-backbone'
group :assets do
gem 'sass-rails', '~> 3.2.3'
gem 'coffee-rails', '~> 3.2.1'
gem 'uglifier', '>= 1.0.3'
end
gem 'jquery-rails'
group :test, :development do
gem 'rspec-rails', '~> 2.6.1'
gem 'mongoid-rspec', '~> 1.4.4'
gem 'capybara', '~> 1.0.1'
gem 'factory_girl_rails', '~> 1.1.0'
gem 'database_cleaner', '~> 0.6.7'
gem 'jasmine', '~> 1.0.2.1'
end
ジェネレーターを使用してmongo構成ファイルを生成しました。結果は次のとおりです。
development:
host: localhost
database: loccasions_development
test:
host: localhost
database: loccasions_test
# set these environment variables on your prod server
production:
host: <%= ENV['MONGOID_HOST'] %>
port: <%= ENV['MONGOID_PORT'] %>
username: <%= ENV['MONGOID_USERNAME'] %>
password: <%= ENV['MONGOID_PASSWORD'] %>
database: <%= ENV['MONGOID_DATABASE'] %>
MongoDBが稼働していることを確認でき、Webブラウザインターフェイスにアクセスできます。ただし、実行するrails g rspec:install
と、次のエラーが発生します。
NOTE: Gem.available? is deprecated, use Specification::find_by_name. It will be removed on or after 2011-11-01.
Gem.available? called from /home/glenn/.rvm/gems/ruby-1.9.3-p362/gems/jasmine-1.0.2.1/lib/jasmine/base.rb:64.
host is not a valid option for Mongo::MongoClient
/home/glenn/.rvm/gems/ruby-1.9.3-p362/gems/bson-1.8.2/lib/bson/bson_c.rb:24:in `serialize': wrong number of arguments(4 for 3) (ArgumentError)
どうすればこれを修正できますか?