Mongo条件节点中的条件



我希望能够有一个API,可以根据日期进行过滤。所以你传入如下内容:

    dob: {
        date: new Date("5/22/1955"),
        filter: 'lt'
    }

这应该返回DOB小于日期的所有记录,但是如果在过滤器中传递了"gte",那么它应该返回DOB大于或等于日期的所有记录。

显然,Mongo的查询应该是

dobQuery = {dob: {gte: data.dob.date}};
dobQuery = {dob: {lt: data.dob.date}};

但是我怎样才能使它成为条件呢?我想写这样的东西,但这当然行不通:

dobQuery = {dob : {"$" + data.dob.filter: data.dob.date}};

我怎么写出来?

使用括号符号编程构建dobQuery:

dobQuery = {dob: {}};
dobQuery.dob['$' + data.dob.filter] = data.dob.date;

最新更新