我在这里关注本教程:http://docs.sequelizejs.com/manual/tutorial/migrations.html#creating-first-model-and-migration-
但是当我这样做时:
node_modules/.bin/sequelize db:seed:all
它给了我
ERROR: null value in column "createdAt" violates not-null constraint
我使用新的Postgres DB 10.4在新的npm init
项目中进行了测试。
方言: postgres
方言版本:“ pg”:“ 7.4.3”,
数据库版本: 10.4
Sequelize版本:“ sequelize”:“ 4.38.0”
也许这是一条路吗? http://mmiyauchi.com/?p=2057
答案 0 :(得分:1)
我找到了答案;由于某些原因,将createdAt和updatedAt添加到了SequelizeMeta表中,但是迁移是在没有日期值的情况下向SeqwuelizeMeta表中添加了一条记录,正是该查询中断了迁移。
答案 1 :(得分:0)
我遇到同样的错误是因为我的表中有一个数据,为了解决这个问题,我转储了所有数据并运行sequelize sync。
答案 2 :(得分:0)
使用 Sequelize + Postgres 发生在我身上。
添加到 sequelize.define 选项参数 timestamps: true
解决了它。
步骤:
我在表创建 (createdAt
) 中定义了列 updatedAt
、deletedAt
和 queryInterface.createTable
。
在模型定义选项对象 (sequelize.define(modelName, attributes, options)
) 上,我忘记了 timestamps: true
。