2011-03-23 10 views
11

nosqlとsqlデータストアの併用をお勧めします。たとえば、監査証跡やログ情報をmysqlにいくつか報告し、mongodbにいくつかのスレッド化された階層データを記録します。Rails 3:アクティブレコードとモンゴイドを同時に使用する方法

mongoidだけでなく、mysql上でアクティブなレコードを持つレールを接続することは可能ですか?

すぐに使用できないようです...何かヒント? これは推奨されないアプローチですか?

答えて

13

これを行うには、Railsをそのままにしておく必要があります。Mongoidのドキュメントで一般的に示唆されているように、ライブラリを除外しないでください。それらを別々に設定する必要があるので、database.ymlとmongo.ymlの設定ファイルが必要です。また、それらが両方ともロードされていることを確認する必要があります。

その後、モデルごとにARとMongoidを有効/無効にすることができます。

class User < ActiveRecord::Base 
    #this is an AR model 
end 

class Item 
    include Mongoid::Document 
    #this is a Mongoid model 
end 
+1

私がそれらを使用しなくても最初に作成しなければならない...それはあなたが書いたようにうまくいっています、ありがとうございました!... mongoidのレール発電機ドキュメントがあれば、ARマニュアルのモデルを生成しなければならないのですか? –

+0

私は「はい」と言っていますが、どちらをうまく生成できるか調べる価値があります。私は見て、あなたもすることができます。 http://mongoid.orgは良いスタート地点です。 –

+1

Mongoidの宝石はRailsの 'orm'ジェネレータよりも優先されますが、application.rbに次のようなものを追加することでリセットすることができます:' config.generators {| g | g.orm:active_record} ' – Jesper

関連する問題