我一直在绕圈子。我正在学习很多东西,除了我正在尝试做的一件事。
我有两个表,Projects 和 Tickets,我试图确保当项目的标题更新时,所有关联票证中的项目名称也将更新。
我是 Sequelize 的新手,对 Postgres 不太了解。我了解关联、外键等,但缺少一块拼图。我找不到使用 Sequelise 实现我想做的事情的方法,是时候寻求帮助了。
我的模型如下(我省略了我的问题不需要的属性)
const Project = db.define('project', {
title: {
type: Sequelize.STRING
},
description: {
type: Sequelize.STRING
}
});
const Ticket = db.define('ticket', {
title: {
type: Sequelize.STRING
},
project: {
type: Sequelize.STRING
}
});
当项目模型中的“标题”列更改时,如何自动更新工单“项目”列?非常感谢你提前
将要
最佳答案
在 x.model.js
中,您需要输入以下内容:
// In my case
Users.associate = function (models) {
this.hasMany(
models.get('projects', { as: 'projects', onUpdate: 'CASCADE' })
);
return this;
};
然后在您的其他模型中:// In my case
Projects.associate = function (models) {
this.belongsTo(models.get('users'), {
foreignKey: 'userId',
onUpdate: 'CASCADE',
});
return this;
};
最后你需要同步你的数据库:db.sync();
关于node.js - 使用 Sequelize 一次更新两个关联表中的列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66634132/