宝石安装mongoid的抛出在Ruby中未初始化的常量,工作在IRB(gem-install of

2019-10-31 11:58发布

我写使用Ruby / MongoDB的脚本存储鸣叫。 之后,我的宝石安装mongoid,这第一部曲代码抛出错误:

require 'rubygems'
require 'mongo'
require 'mongoid'

Mongoid.database = Mongo::Connection.new('localhost').db('db')
# snippet from http://rujmah.posterous.com/using-mongoid-without-rails

NB。 这绝不Rails应用程序 ,但终端脚本。 我得到的错误是:

./mongoid.rb:10: uninitialized constant Mongoid (NameError)
    from /Library/Ruby/Site/1.8/rubygems/custom_require.rb:36:in `gem_original_require'
    from /Library/Ruby/Site/1.8/rubygems/custom_require.rb:36:in `require'
    from mongoid.rb:3

它工作在IRB和我运行红宝石1.8.7(2009-06-12 PATCHLEVEL 174)万向darwin10.0。

我究竟做错了什么?

2012编辑八月

不知怎的,我得到它的工作。 可惜的是,近一年,我真的不记得如何。 我会尝试下一次会做。

Answer 1:

我打了同样的问题,而试图让Bullet宝石工作。 对我来说,解决办法是只需移动gem 'mongoid', github: 'mongoid/mongoid'作为Gemfile中的第一行。 我觉得很奇怪,但,这是我如何摆脱这个错误的。

我使用Ruby 2.1.0和Rails 4.0.0



文章来源: gem-install of mongoid throws an uninitialized constant in Ruby, works in irb