即使使用primaryKey: true,也会抛出错误“名为‘id’的列已添加到‘users’的属性中,但未标记为‘primaryKey: true’”。
应用程序运行正常,直到我昨天将其关闭,已经设置了主键:true。
export const users = connection.define("users", {
id: {
type: DataTypes.INTEGER,
primaryKey: true,
allowNull: false,
autoIncrement: true,
},
email: {
type: DataTypes.STRING,
allowNull: false
},
senha: {
type: DataTypes.STRING,
allowNull: false
},
empresa_id: {
type: DataTypes.INTEGER,
allowNull: true
},
isAdmin: DataTypes.TINYINT,
}, {
freezeTableName: true
})
export default async function createUser(req = NextRequest, res = NextResponse) {
let email = req.body.email
let password = await hash(req.body.password)
let isAdmin = 1
await users.create({
email: email,
senha: password,
isAdmin: isAdmin,
}).then(data => {
console.log(data)
res.status(200).json({'response': 'Usuário criado com sucesso!'})
}).catch(err => {
console.log(err)
res.status(400).json({'response': 'Erro ao criar usuário.'})
})
}
我尝试了所有sync()选项,但出现了同样的错误。
我也面临同样的问题,补充一下 ID: { 类型:DataTypes.INTEGER, 自动增量:真, 主键:true }, 进入你的模型定义