使用关联进行后续更新

az *_*rnd 1 node.js sequelize.js

我有两种模型,用户和商家。我将从 UI 发送 JSON 数据。在 Sequelize 中,我使用了“包含”选项来插入如下数据。

models.user.create(req.body, { include: [models.merchant] });
Run Code Online (Sandbox Code Playgroud)

它按预期运行良好。所以我尝试更新如下数据。

var filter = {
            where: { id: id },
            include: [
                models.merchant
            ]
        };

models.user.update(req.body, filter);
Run Code Online (Sandbox Code Playgroud)

上面的代码仅更新用户数据。关联在更新中不起作用。我不知道这有什么问题。

请任何人帮助解决此问题。

提前致谢。

5ar*_*5ar 5

您要求的行为根本无法通过单个更新调用来完成。如果您检查更新函数的文档,则没有包含选项,即 sequelize 只能为调用更新函数的模型的表构建更新查询。

您必须单独更新关联。我建议您将这些更新放在一个事务中,以避免同时发生对同一对象的多个更新的任何问题。