我是PostgreSQL的新手,并且第一次在NodeJS中使用Sequelize包。
我的本地时区:IST(+05:30)
续集时区:UTC(+00:00)
模型
SomeModel = psql.define('SomeModel', {
month: {
type: Sequelize.DATE,
field: 'month'
},
uploadedDate: {
type: Sequelize.DATE,
field: 'uploaded_date'
},
name: {
type: Sequelize.STRING,
field: 'name'
}
}, {
tableName: 'some_table'
});
输入数据
月:'2017年12月'
已上传日期:'11 -Dec-2017'
保存的数据
月:'2017-11-30'
uploadedDate:'2017-12-10 02:00:00'
我理解月份字段UTC转换发送时间为5小时30分钟,所以11月再次发布,但是在上传的日期之后应该是'2017-12-10 18:30:00'。为什么PostgresSQL将它带到02:00,02:00发生了什么?
现在有一个奇怪的事情我不明白,当我尝试获取同一行时,值再次被更改。
产值
月:'2017-11-30'
uploadedDate:'2017-12-09T20:30:00.000Z'
现在为什么它将已转换的时间转换为UTC,只是为了增加我的问题。
请帮助我缺少什么以及如何解决这个问题。
搜索了几天之后,我通过以下方式纠正了它并理解了整个场景。
5:30*4=22
解决方案是将我的服务器的时区转换为UTC,所有内容都像魅力一样工作,代码中没有任何修改。