如何在Sequelize中拥有1:m的关联?

时间:2018-02-12 07:17:10

标签: node.js sequelize.js

我有两个模型如下:

const User     = sequlize.define("user", {...})
const Project  = sequelize.define("project". {...})

我希望它们之间有1:M关系,这样项目可以有多个用户,但用户可以拥有一个项目。

我尝试了以下代码:

User.hasMany(Project, { as: "project" })

但hasMany将外键添加到Project表而不是User表。我知道有可能以相反的方式做到这一点,即:

Project.hasMany(User, { as: "project" })

但如果我这样做,那么当我使用以下代码时,它不会引发任何关联错误。

User.findOne({ where: { id: "username", password: "password"},
               include: [{ model: Project, as: 'project', required: true }]
            })

0 个答案:

没有答案