【发布时间】:2017-05-03 15:36:22
【问题描述】:
我有一个 MongoDB 模型,其中包含一个日期字段,其类型定义为 Date.now。任何日期都将转换为 ISO 日期格式。在模型内部,日期定义为:
xDate : {
type: Date.now,
required: true
}
我将当前日期传递为:
var d = new Date();
var temp = d.toISOString();
var subStr = temp.substr(10,temp.length - 1);
var curDate = temp.replace(subStr, "T00:00:00.000Z");
console.log(curDate);
但是,日期在 MongoDB 架构中存储为 ISO 字符串。我尝试使用 Mongoose 使用以下查询对其进行查询:
X.
find({
xDate: curDate
})
.exec(function(err, doc) {
var response = {
status : 200,
message : doc
};
if (err) {
console.log('Error');
response.status = 500;
response.message = err;
} else if (!doc) {
console.log("Documents against the date not found in database" ,curDate);
response.status = 404;
response.message = {
"message" : "Documents not found for " + curDate
};
}
res
.status(response.status)
.json(response.message);
});
尽管数据在那里,但我一直得到一个空白的 json 数组。在表格内,xDate 以 YYYY-MM-DD 格式存储。
【问题讨论】:
标签: mongodb express mongoose mean-stack