我的架构如下所示:
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存在于array(likes)中,like为1,否则为0。
我可以做到这一点吗?