【发布时间】:2016-06-30 17:39:30
【问题描述】:
我正在使用 express.js、mongoose 和 ejs,我有一个类似的模型
var t_schema = new mongoose.Schema({
name: String,
startFrom: Date,
...
})
router.get('/', function(req,res) {
t_model.findOne({name: req.body.name}, function(result) {res.render('t', result)})
})
所以结果包含一个日期类型 startFrom
在我的 ejs 中:
$('#startDate').datepicker.set(<%= result.startDate %>)
这是一个String而不是Date,而datepicker.set需要Date。
如何将 result.startDate 设为日期?
$('#startDate').datepicker.set(new Date('<%= result.startDate %>'))
似乎可行,但时区不正确。
还有 2.)
在 Nodejs/mongodb 中操作日期的最佳实践是什么? 我的用户将来自不同的时区,所以我想在浏览器中的时区显示日期时间,我认为在 Mongodb 中将日期存储为 UTC 可能更好?
【问题讨论】:
-
这可能更适合作为两个不同的问题。
-
“时区不正确”是什么意思?
-
可能是服务器的时区和浏览器的时区不同?
-
如您所说,用户来自不同的时区。您应该假设浏览器和服务器有不同的时区。
标签: node.js mongodb date datetime ejs