私のスキーマを以下に示します。
var productSchema = new Schema({
name : String,
likes : [{
user_id : Schema.Types.ObjectId,
date : Date
}]
});
このコレクションがあるとします
{ name : A, likes : [ {user_id : id1, date : blahblah}, {user_id : id2, date : balh}] }
{ name : B, likes : [ {user_id : id1, date : blahblah}] }
{ name : C }
次に、クエリを実行して出力のようなものを表示したい
(user_id = id1){ name : A, like : 1}, { name : B, like : 1}, { name : C, like : 0}
(user_id = id2){ name : A, like : 1}, { name : B, like : 0}, { name : C, like : 0}
つまり、ここに「like」という新しいフィールドを追加したいと思います。
user_id が配列 (likes) に存在する場合、like は 1 であり、そうでない場合は 0 でなければなりません。
これを実現できますか?