モンゴイドのImnewbeeと私は2つの基本的な(私が思う)質問があります。参照の配列をMongoidに格納するための最良の方法は何ですか。これが私が必要とするものの短い例です(単純な投票):
{
"_id" : ObjectId("postid"),
"title": "Dummy title",
"text": "Dummy text",
"positive_voters": [{"_id": ObjectId("user1id")}, "_id": ObjectId("user2id")],
"negative_voters": [{"_id": ObjectId("user3id")}]
}
そして、それは正しい方法ですか?
class Person
include Mongoid::Document
field :title, type: String
field :text, type: String
embeds_many :users, as: :positive_voters
embeds_many :users, as: :negative_voters
end
またはそれは間違っていますか?
また、よくわかりませんが、この状況ではドキュメントの構造が悪いのではないでしょうか。ユーザーがすでに投票していて、ユーザーに2回の投票を許可しない場合、どうすれば優雅に取得できますか?たぶん私はドキュメントの別の構造を使用する必要がありますか?