小编sam*_*ode的帖子

如何为 Mongoose 中的日期字段设置正确的时区?

我正在使用moment来生成时间和日期:

const moment = require('moment-timezone');
const emailModel = require('./api/models/emails');

sentTime=moment().tz('America/Los_Angeles').format();
console.log(sentTime);    //console log  shows correct time
emailModel.findOneAndUpdate({ _id: emailInfo._id }, {sentTime: sentTime }, { upsert: true },function (err, doc) {
  if (err)
    console.log(err);
});
Run Code Online (Sandbox Code Playgroud)

这是我正在使用mongoose 的架构:

const mongoose = require('mongoose');

const Schema = mongoose.Schema;
const EmailSchema = new Schema({
   .
   .
   .
    sentTime: {
        type: Date,
        trim: true
    }
   .
   .
   .
});
Run Code Online (Sandbox Code Playgroud)

问题是:控制台日志显示正确的时间2020-01-07T12:23:00-08:00 但猫鼬在数据库中保存了错误的时区:2020-01-07T20:23:01.000+00:00

mongoose mongodb node.js momentjs moment-timezone

3
推荐指数
1
解决办法
5380
查看次数

标签 统计

moment-timezone ×1

momentjs ×1

mongodb ×1

mongoose ×1

node.js ×1