gpt4 book ai didi

node.js - Sequelize 不会创建 hasMany 关联,而是创建在 DB 中定义的外键

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

虽然当我在我的 manufacturer 模型关联上调用 create 时,我在数据库中定义的关联似乎没有创建。

这些是我的关联模型。

ManufacturerText.associate = function (models) {
models.manufacturer_text.belongsTo(models.language, {
as: 'language'
});
models.manufacturer_text.belongsTo(models.manufacturer, {
as: 'manufacturer'
});
};

ManufacturerVideo.associate = function (models) {
models.manufacturer_video.belongsTo(models.language, {
as: 'language'
});
models.manufacturer_video.belongsTo(models.video_type, {
as: 'video_type'
});
models.manufacturer_video.belongsTo(models.manufacturer, {
as: 'manufacturer'
});
}

这是主要模型:
``
  Manufacturer.associate = function(models) {

// models
models.manufacturer.hasMany(models.manufacturer_text, {foreignKey:'manufacturer_id', as: 'manufacturer_translations' });
models.manufacturer.hasMany(models.manufacturer_video, {foreignKey:'manufacturer_id', as: 'manufacturer_videos' });
models.manufacturer.hasMany(models.inspiration_image, {foreignKey:'manufacturer_id', as: 'inspirations' });

models.manufacturer.belongsTo(models.file, {as: 'image'});
models.manufacturer.belongsTo(models.file, {as: 'header_image'});

};

上述两个协会都不起作用。

当我使用 MySQL Workbench 检查数据库时,似乎关联定义正确。
enter image description here

最佳答案

似乎是输入引起的问题。

当你发送 id 属性时,即使它的 null 也无关紧要,sequelize 不明白它是一个 INSERT
我正在发送如下记录;

{
delivery_days: 10,
image_id: 4,
{ id: null, url: 'http://url', ... }
}

关于node.js - Sequelize 不会创建 hasMany 关联,而是创建在 DB 中定义的外键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53023986/

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