![](/img/trans.png)
[英]how can I rewrite my mongoose query after splitting data from one model into two?
[英]how can I construct my mongoose query so that at least one of two statements is always taken under consideration?
在我的应用程序中,用户可以添加可见的条目
这是我的猫鼬查询:
猫鼬:test.find({updated_at:{'$ gte':new Date(“ Fri,14 Oct 2011 00:00:00 GMT”),'$ lte':new Date(“ Fri,14 October 2016 20:12 :14 GMT“)},用户名:{'$ in':['XXXXXXXXX','YYYYYYYYYYYYYYYY']},'$ or':[{myFlag:false}]}){字段:undefined}
这就是我构造它的方式:
if (friends != undefined) {
var friendsSplitted = friends.split(",");
query = query.where("username").in(friendsSplitted);
}
if (publicEntries != undefined && publicEntries === "true") {
query = query.or({myFlag: false});
}
该查询基本上说:
查找属于您朋友的所有内容,或者查找myFlag设置为false的任何内容。
我要更改它,这样说:
查找属于您朋友的所有内容,还查找myFlag设置为false的任何内容(但不一定属于您的朋友)。
你能帮我吗?
您应该在$ or内尝试两个查询,如下所示:
test.find({'$or': [ { myFlag: false },
{updated_at: { '$gte': new Date("Fri, 14 Oct 2011 00:00:00 GMT"),
'$lte': new Date("Fri, 14 Oct 2016 20:12:14 GMT") },
username: { '$in': [ 'XXXXXXXXX', 'YYYYYYYYYYYYYY' ] } ] })
希望这可以帮助!
如果我错过了什么,请评论我。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.