gpt4 book ai didi

node.js - Sequelize, 一对多关联, find with include

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

我无法理解为什么 find 在尝试急切加载关联时会抛出错误。

相关机型:

标签:

module.exports = function(sequelize, DataTypes) {
var Tag = sequelize.define('Tag',
{
tag_name: {type: DataTypes.STRING(30), allowNull: false}
},
{
associate: function(models) {
Tag.hasMany(models.Event, {foreignKeyConstraint: true});
Tag.hasMany(models.Retailer, {foreignKeyConstraint: true});
}
});
return Tag;
};

事件标签:
module.exports = function(sequelize, DataTypes) {
var EventTag = sequelize.define('EventTag',
{
cor_name: DataTypes.STRING
},
{
associate: function(models) {
EventTag.belongsTo(models.Tag, {foreignKeyConstraint: true});
EventTag.belongsTo(models.Event, {foreignKeyConstraint: true});

}
});
return EventTag;
};

当我进行查找时,我收到一条错误消息,提示“EventTag 未与标签关联!”
这是发现:
db.Tag.find({
where: ['id = ' + req.param('activity')],
include: [
{model: db.EventTag,
include: [
{model: db.Event,
where: [where]}]
}],
attributes: [
'id',
'tag_name']})

我在这里缺少什么?我什至尝试了 findAll ,但出现了同样的错误。
我正在使用 sequelize 1.7.10,如果我使用最新版本会有帮助吗?

最佳答案

我发现了这个问题。
我忽略了:

Tag.hasMany(models.Event, {foreignKeyConstraint: true});

应该是:
Tag.hasMany(models.EventTag, {foreignKeyConstraint: true});

关于node.js - Sequelize, 一对多关联, find with include,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27664293/

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