我有猫鼬模式,如下所示:
createdOn: {
type: String,
//default: Date.now,
default: moment(new Date(Date.now())).format('MMM Do YY') //npm install moment --save # npm
},
updatedOn: {
type: String,
//default: Date.now
default: moment(new Date(Date.now())).format('MMM Do YY')
}更新:
将类型更改为字符串后,
我得到:
Fri 7.2017年7月28日14:43 40 GMT+0530 (IST)
如何去除时间和SMT。
我只需要保留2017年7月28日星期五
我安装了节点js的矩包(http://momentjs.com/)
我上面的架构有什么问题:
我得到了
MongooseError:到目前为止,在路径"updatedOn“中的”8月7日17日“值的强制转换失败 消息:“在路径”“updatedOn”处的“8月7日17日”值“强制转换失败”,名称:'CastError',stringValue:‘Aug71717’,类别:‘日期’,值:‘8月7日17日’,路径:'updatedOn',原因:未定义}
发布于 2017-08-07 12:47:35
双重默认赋值看起来是错误的。
default: default: moment(new Date(Date.now())).format('MMM Do YY')作为一种更好的实践,您应该考虑仅仅使用UNIX时间戳而不是格式化的日期字符串。时间戳将允许您轻松地跟踪数据库上的统计信息()。
所以你可以用:
Date.now() // returns a UNIX timestamp在moment.js中,UNIX时间戳:
moment().unix()如果出于某种原因,您需要字符串格式的时间戳,您可以一直这样做:
moment().unix() + ''https://stackoverflow.com/questions/45546640
复制相似问题