我有下面的文档模型..。
{
_id: 'jr3h4h51gkjfhqd',
first_name: 'bob',
last_name: 'jones',
age: 33,
email: 'bob@bobby.com',
phone_number: '',
job: 'accountant',
title: 'mr'
}是否有一种方法可以编写一个查询,以便如果提供了一个过滤器,那么查询将有一个特定值的筛选器,否则就不会为该属性应用一个筛选器。
如果未提供筛选器,则忽略该筛选器(本质上,如果不提供筛选器,则所有文档都将被返回),但如果只提供一个筛选器,则查询只应基于该筛选器过滤文档。以下是如果提供了5个过滤器的查询。
User.find(
{
first_name: FIRST_NAME_FILTER,
last_name: LAST_NAME_FILTER,
email: EMAIL_FILTER,
job: JOB_FILTER,
title: TITLE_FILTER
}
)发布于 2021-08-05 12:50:12
你可以在两个地方这样做
query={}
if(first_name_filter) query.add("first_name",first_name_filter);
if(last_name_filter) query.add("last_name",last_name_filter);
...
User.find(query);https://stackoverflow.com/questions/68665046
复制相似问题