A Peak Never Ending !

Mongoid使ってみた

mongooseを使ってみた流れで今度はrubyでmongoidを使ってMongoDBにアクセスしてみた。rubyもさほど触ったことないけどjsよりはなんかなじむ。 mongoidはMongoDB (ver 2.0.0) 以降しかサポートしてないみたいだけど、debianのパッケージで入るのは1.4.x系なので公式のリポジトリから2.0系に入れ替えてみた。

2.0系をインストールする

/etc/apt/sources.list
1
deb http://downloads-distro.mongodb.org/repo/debian-sysvinit dist 10gen
/etc/apt/sources.list
1
2
3
4
5
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv 7F0CEB10
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv 7F0CEB10
sudo aptitude remove mongodb
sudo aptitude update
sudo aptitude install mongodb-10gen

mongoidテスト

1
gem install mongoid bson_ext

前回mongooseで試したデータを使いまわし。すごくお手軽。

memo.rb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
require 'mongoid'

class Memo
  include Mongoid::Document

  field :title, :type => String
  field :body, :type => String
end

Mongoid.configure do |conf|
  conf.master = Mongo::Connection.new('localhost', 27017).db('memo')
end

memos = Memo.all
memos.each do |memo|
  puts "#{memo.title} / #{memo.body}"
end