【发布时间】:2020-09-08 23:27:19
【问题描述】:
我在我的项目中使用 Mongoose,在我使用日期字段的模式之一中,如下所示:
reservationDay: {
type: Date,
default: Date.now
}
我可以毫无问题地使用此字段创建文档。当我在创建此日期后 console.log 时,我得到:
reservationDay: Thu Nov 20 2014 04:45:00 GMT+0100 (CET)
但是,当我尝试更新此文档时出现问题(即使没有更改 reservationDay 字段)。这是我收到的错误消息:
name: 'CastError',
message: 'Cast to date failed for value "20/11/2014 04:11" at path "reservationDay"' } CastError: Cast to date failed for value "20/11/2014 04:11" at path "reservationDay"
这是我在服务器端更新此文档的方法:
Reservation.findOne({ _id: id }).exec(function(err, reservation) {
if (err) {
//handle
}
if (!reservation) {
//handle
}
reservation = extend(reservation, req.body);
reservation.save(function(err, updatedReservation) {
if (err) {
//handle
}
return res.json(reservation);
});
});
并且 req.body 中的日期没有更改。
任何想法可能导致此错误?
谢谢!
【问题讨论】:
标签: javascript node.js mongodb mongoose