Sequelize js:使用外键创建/更新

时间:2017-02-16 05:02:06

标签: javascript node.js sequelize.js

只想了解CRUD并了解它是如何工作的。

model.wallet.belongsTo(model.users);

model.wallet.sync({force: true}).then(function () {
    return model.wallet.create({
        balance: 300,
        users: {id:1}
    }, {
        include: [ model.users ]
    })
});

我试过include: [ {model: model.users} ]但仍然有(空)

如果你有解决方案和一些例子,它应该很好。

1 个答案:

答案 0 :(得分:1)

根据Sequelize文档中的示例

  

Player.belongsTo(球队); //将向Player添加 teamId 属性以保存Team的主键值。

     

默认情况下,将从目标模型名称和目标主键名称生成belongsTo关系的外键。

假设这些模型名为playerteam,模型team中的主键为id。这意味着如果您在指定的模型上使用belongsTo(没有任何其他选项),它将创建一个名为<related_model_name><related_model_primary_key>的属性,因此如果您的用户模型被称为users并且它是&#39 ;;主键为id,然后在wallet模型中创建的外键将被称为usersId

如果要创建新的wallet并将其分配给用户,则需要在create属性中指定正确的外键字段

model.wallet.create({
    balance: 300,
    usersId: 1
});