【发布时间】:2021-11-20 03:15:36
【问题描述】:
我只在用户希望根据标准过滤时才考虑过滤。
我可以使用 $in 很好地过滤,但是当 $in 过滤器中使用的条件没有提供时,它会抱怨它需要一个数组。用 [] 替换它会导致它返回为空,并且我没有要插入的所有可能值的列表(并且不确定我是否想要)
有什么想法吗?下面的颜色是可选标准。 *如果有一个我可以使用的跳过标志会很好。
const profiles = await Profile.aggregate([
{
$geoNear: {
...geoFilter,
},
},
{
$match: {
$and: [
{
_id: {
$ne: Profile.castID(req.user.profileID),
},
colors: { $in: colors },
},
],
},
},
{ $skip: skip },
{ $limit: limit },
]);
【问题讨论】:
标签: node.js arrays mongodb mongoose mongodb-query