gpt4 book ai didi

sequelize.js - 如何在 Sequelize 中返回逆关系

转载 作者:行者123 更新时间:2023-12-03 22:23:21 24 4
gpt4 key购买 nike

这是我的 类别 模型

module.exports = (sequelize, DataTypes) => {
const Category = sequelize.define('Category', {
name: {
type: DataTypes.STRING,
allowNull: false,
required: true
},
{
freezeTableName: true,
paranoid: true
});

Category.associate = function(models) {
models.Category.belongsTo(models.User, { foreignKey: 'userId', as: 'user' });
};

return Category;
}

这是我的 用户 模型
module.exports = (sequelize, DataTypes) => {
const User = sequelize.define('User', {
name: {
type: DataTypes.STRING,
allowNull: false,
required: true
},
},
{
freezeTableName: true,
paranoid: true
});

return User;
}

如果我想显示 类别 和他的 用户 ,这非常有效
Category.findAll(include: [{ all: true }])

考虑到 用户 属于许多 类别 我如何显示 用户 与所有 类别
我没有数据透视表,因为 类别 表有一个 userId 列。

最佳答案

这就是你所需要的:

// The expected inverse relation
User.hasMany(Category, {
foreignKey: "userId"
})

// Fetching users with linked categories.
const users = await User.findAll({
include: [
{
model: Category
}
]
})

所有这些代码都可以在 Sequelize-sscce 中找到。源可用 here

关于sequelize.js - 如何在 Sequelize 中返回逆关系,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59005805/

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