babie steps

作業療法記録

Rails3 対応 MongoDB ORM、Mongoid 詳解―アップグレード

Mongoid のバージョンをアップグレードする時のリファレンスとしてご利用下さい。

2.0.0.BETA.16 + へのアップグレード

このバージョンは、MongoDB 1.6.0 を必要とします。

2.0.0.BETA.15 + へのアップグレード

もし JSON のシリアライズに include_root_in_json クラス変数を使っている場合は、もはや使用できません。現在は、mongoid.yml において、同名のグローバルな設定オプションを使用します。必要ならば、オンにしてください。(デフォルトは false です)

defaults: &defaults
  include_root_in_json: true

2.0.0.BETA.14 + へのアップグレード

フィールドの :accessible => false オプションは、attr_accessible と attr_protected を推奨するため、削除されました。モデルで定義を変更する必要があります。

gemcutter のソート順は変なので注意してください。Mongoid をアップグレードするときは、厳密にバージョンを指定しなければなりません。Bundler を使うときも、この点に気をつけてください。この Gem はすぐ配布停止されます。

2.0.0.BETA.11 + へのアップグレード

Mongoid.use_object_ids 設定オプションは削除されました。mongoid.yml または設定ブロックから削除する必要があります。

もし id を BSON::ObjectID の文字列表現として使っている場合は、以下のどちらかを行う必要があります。

a) それぞれのモデルに id を String を使うように指示します:

class Person
  include Mongoid::Document
  identity :type => String
end

b) データベースの文字列 id を ObjectID に移行します。スクリプト例は、この Gist を見てください。(Kyle Banker さんありがとう)

2.0.0.BETA.10 + へのアップグレード

smart spawning を使用している Passenger ユーザーは、フォークした時に再接続するイニシャライザを削除してください。現在は Mongoid が自動的に制御します。

preload_app を true にセットしている Unicorn ユーザーも、フォークした時に再接続するイニシャライザを削除してください。同じように、現在は Mongoid が自動的に制御します。