我有一个带有 2 个钩子的简单用户模型。
User.beforeCreate(setSaltAndPass)
User.beforeUpdate(setSaltAndPass)
Run Code Online (Sandbox Code Playgroud)
第一个工作完美,但 beforeUpdate 不运行,根据文档,执行以下命令应该没有问题
await User.update(user, {
where: {
id
}
})
Run Code Online (Sandbox Code Playgroud)
将密钥保存为纯文本,例如在创建时不会发生这种情况。奇怪的是beforeBulkUpdate是在更新的时候执行的。
这是回调,详细信息是我没有更改的属性,或者至少我不知道如何访问它。
const setSaltAndPass = user => {
if (user.changed('pass')) {
user.salt = User.generateSalt()
user.pass = User.encriptPass(user.pass(), user.salt())
}
}
Run Code Online (Sandbox Code Playgroud)
完成它的工作,但钩子它没有执行。