我是PostgreSQL的新手,并且第一次在NodeJS中使用Sequelize包。
我的当地时区:IST(+05:30)
Sequelize timezone: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月'
uploadedDate:' 2017年12月11日'
已保存的数据
月:' 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,只是为了增加我的问题。
请帮助我错过的内容以及我如何解决这个问题。
答案 0 :(得分:0)
经过几天的搜索,我通过以下方式纠正了这一点并了解了整个情景。
df1 = df.reindex(np.random.permutation(df.index))
现在有意义了解决方案是将我的服务器的时区转换为UTC,所有内容都像魅力一样工作而不需要修改代码。