我正在尝试使用meteor进行过滤搜索模块。我希望我的用户通过添加过滤器来确定他们的搜索精确度。
有了这个:
if(!options.natives.length)
return Meteor.users.find({
'profile.languages.learning': {$in: options.learning}
});
else if(!options.learning.length)
return Meteor.users.find({
'profile.languages.native': {$in: options.native}
});
else if(!options.learning.length && !options.native.length)
return null;
else
return Meteor.users.find({
$or: [
{'profile.languages.native': {$in: options.natives}},
{'profile.languages.learning': {$in: options.learning}}
]
});
return Meteor.users.find({
$and: [
{$or {'profile.languages.native': {$in: options.natives}}, NoMatchingLang},
{'profile.languages.learning': {$in: options.learning}}
]
我的问题是profile.languages.learning
是一个数组,我希望其中至少有一行匹配{$in: options.learning}
。
您认为最好的方法是什么?
谢谢, 大卫