2017-03-21 10 views
0

irbシェルを使用してリモートmongoDBデータベースに接続しようとしています。RubyとMongoDB:require 'uri'がfalseを返し、trueを返す必要があります

私は次のことを実行しました:

2.3.0 :001 > require 'mongo' 
=> true 
2.3.0 :002 > Mongo::Logger.logger.level = ::Logger::INFO 
=> 1 
2.3.0 :003 > require 'uri' 
=> false 

最後の文がtrueを返す必要があります。私は経由して、この後にクライアントを初期化しようとした:

db = Mongo::Client.new(ENV['MLAB_URI']) 

とエラーました:

NoMethodError: undefined method `each' for nil:NilClass 
+1

'require'を返す' false'は、ファイルがすでに必要だったことを意味します。 – Aetherus

+0

オハイオ州オハイオ州。だから私はデータベースを初期化しようとすると間違っている可能性がありますか? – xeno7

+2

'Mongo :: Client#initialize'は文字列の配列**を期待していますが、' nil'を渡しました。明らかに、環境変数 'MLAB_URI'は正しく設定されていません。 – Aetherus

答えて

1

私はあなたがENV変数を設定していないと思いますが。
ENV ['MLAB_URI']変数の値をチェックします。

+0

端末では、「MLAB_URI = mongodb:// @ ds041526.mlab.com:41526/coursera_zips」と私の実際のユーザ名とパスワードを入力しました。それはirbでは動作しなかったので、私は先に進み、MLAB_URIではなくURIに貼り付けましたが、私はまだ同じ問題を抱えています。 – xeno7

関連する問題