gpt4 book ai didi

sequelize.js - Sequelize,是否设置时间戳 :true create the createdAt updatedAt columns in the migrations?

转载 作者:行者123 更新时间:2023-12-03 22:22:27 52 4
gpt4 key购买 nike

我在 sequelize 中的迁移脚本没有创建时间戳列 createdAt、updatedAt
Error: SequelizeDatabaseError: ER_BAD_FIELD_ERROR: Unknown column 'createdAt' in 'field list'
我认为在迁移定义中将时间戳设置为 true 会自动创建列,我错了吗?

module.exports = {
up: function (queryInterface, Sequelize) {
return queryInterface.createTable('User', {
id: {
type: Sequelize.INTEGER,
primaryKey: true,
autoIncrement: true,
allowNull: false
},
uname: {
type: Sequelize.STRING(50)
}

},{
timestamps: true
})
...

最佳答案

通常迁移和模型规范是不同的 - 所以不要假设你在一个中做什么,你可以在另一个中做什么。在模型中,您经常指定一些设置并自动发生事情 - 而在迁移中,您似乎必须手动设置模型中的自动内容。

因此,当您在模型上执行 .sync() 时,您不需要指定 createdAtupdatedAtid 列(假设您选择了正确的选项来包含时间戳并且没有指定您自己的主键) - 但是迁移要求显式设置它们。

关于sequelize.js - Sequelize,是否设置时间戳 :true create the createdAt updatedAt columns in the migrations?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31123451/

52 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com