在MongoDB中使用Date查询JSON对象

时间:2016-03-27 16:30:26

标签: json mongodb meteor

我有一个函数可以根据许多条件为我创建一个查询对象:

compileSearchCriteria(search){
        var conditions = {
            published: true
        };
        conditions["publishedDate"] = {$lte: new Date(search.searchDate)};

        <more code here>

        return conditions;
    },

日期在MongoDB中存储为ISODate。生成的查询如下所示:

{"published":true,"publishedDate":{"$lte":"2016-03-27T16:23:12.000Z"}}

并且什么都不返回。

db.trips.find({"published":true,"publishedDate":{"$lt":ISODate("2016-03-27T15:48:41.866Z")}})

返回所需的结果。直接发送查询也可以:

DealsCollection.find({published:true, publishedDate:{$lt: new Date(this.props.searchDate)}}).fetch()

如何创建查询对象以便获得正确的结果?

更新 它应该工作,它确实有效。问题似乎与Meteor中的mini-mongo实现有关。我将呼叫分开以查看断开连接的位置。服务器使用原始查询返回数据。但是,从mini-mongo集合查询生成的文档没有产生任何结果,即使我可以在其中看到返回的文档。这是一个不同的问题。谢谢你指点。

0 个答案:

没有答案