Just playing around with Ruby and have this very basic example
runner.rb
:
require "bundler/setup"
include Mongo
mongo_client = MongoClient.new("localhost", 27017)
#mongo_client.database_names # lists all database names
#mongo_client.database_info.each { |info| puts info.inspect }
db = mongo_client.db("james_safety")
coll = db.collection("safety")
puts "above"
10.times { |i| coll.insert("i" => i) }
puts "Hello World"
Gemfile
:
source :rubygems
gem 'mongo'
bundle
output:
Using bson (1.8.2)
Using mongo (1.8.2)
Using bundler (1.2.2)
Your bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.
When I try to run ruby runner.rb
, I get this error:
/Users/Tyler/Development/Ruby/JamesSaftey/runner.rb:2:in `<top (required)>': uninitialized constant Mongo (NameError)
from -e:1:in `load'
from -e:1:in `<main>'
If I require 'mongo'
in runner.rb
, it works just fine (I installed the gem outside of the Gemfile).
I also tried require 'rubygems'
. No difference.
Am I just misconfiguring my ruby file to use the Gemfile?
Ruby 1.9.3