gpt4 book ai didi

node.js - Sequelize 模型引用 vs 关联

转载 作者:行者123 更新时间:2023-12-03 14:12:24 25 4
gpt4 key购买 nike

刚开始使用 Sequelize 并且我已经设置了一堆模型和种子,但我无法弄清楚引用与关联。如果他们甚至按照我认为的那样做,我就看不到引用的用例,但是我在文档中找不到很好的解释。

这是多余的引用和关联吗?

module.exports = (sequelize, DataTypes) => {
const UserTask = sequelize.define('UserTask',
{
id: {
primaryKey: true,
type: DataTypes.UUID,
defaultValue: DataTypes.UUIDV4
},
userId: {
type: DataTypes.UUID,
references: { // <--- is this redundant to associate
model: 'User',
key: 'id'
}
}
// ... removed for brevity
},
{
classMethods: {
associate: models => { <--- makes references redundant?
UserTask.belongsTo(models.User, {
onDelete: 'CASCADE',
foreignKey: {
fieldName: 'userId',
allowNull: true,
require: true
},
targetKey: 'id'
});
}
}
}
);
return UserTask;
};

最佳答案

使用 references 可以创建对另一个表的引用,而无需添加任何约束或关联。这意味着这只是 信号 数据库的一种方式,该表具有对另一个表的引用。

创建 association 将为属性添加外键约束。您可以执行关联功能背后的所有魔法。即 User.getTasks();
有关 references 的更多信息,请访问:https://sequelize.readthedocs.io/en/latest/docs/associations/#foreign-keys_1

关于 association 在这里:http://docs.sequelizejs.com/manual/tutorial/associations.html

关于node.js - Sequelize 模型引用 vs 关联,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46305459/

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