如何在SequelizeJs中填充外键列?

时间:2017-07-08 22:06:01

标签: javascript angularjs sequelize.js

我有一个使用sql的数据库,其中User与Account关联,userId作为外键。我想填充那个外键列。我试图在sequelize中搜索setter和getter但是没有太多的帮助从

1 个答案:

答案 0 :(得分:1)

你可以通过几种方式实现这一目标

手动设置ID

 const acct = await Account.create({/* ... */}); // could also find, if that's your use case
 const user = await User.create({ accountId: acct.id, /* ... */ });

续集函数

假设您已经设置了这样的关联

 User.hasMany(Account)
 Account.belongsTo(User)

你可以

 // assume `acct` is in scope
 const user = await User.create({/* ... */});
 await user.addAccount(acct);

你也可以反过来做到这一点

 await account.setUser(user);

(另请注意,我使用await只能在异步函数中运行,但这也可以通过promises实现)