我的模型看起来像:
var purchaseSchema = new Schema({
forDate: {
type: Date,
default: moment().add(1, 'days')
},
name: Sting
}
默认情况下,时刻包括日期和时间。
"2014-12-19T01:23:56.000Z"
但是后来我希望在我的mongo查询中进行比较,例如,
forDate =(某个特定日期)
然而,这些比较不起作用,因为在数据库中,我们有日期和时间。
在这种情况下,如何在mongo中存储信息并进行比较?
答案 0 :(得分:0)
我建议您将其存储为实际日期,而不是字符串。
default: moment().add(1, 'days').toDate()
但由于这是默认设置,因此您需要将其添加为函数:
var purchaseSchema = new Schema({
forDate: {
type: Date,
default: function() { return moment().add(1, 'days').toDate(); }
},
name: Sting
}
答案 1 :(得分:0)
您需要确保将日期存储为ISODate
个对象。您的驱动程序可能会处理编程语言中可比较对象之间的转换。
当在mongo shell中显示时,ISODate将如下所示:
> db.mycoll.findOne();
{
"date" : ISODate("2014-01-28T00:10:57.932Z"),
....
}