【发布时间】:2019-03-05 20:55:17
【问题描述】:
将用户定义为 json b 的 Book
sequelize.define(
"Book",
{
id: { type: DataTypes.STRING, primaryKey: true },
name: DataTypes.STRING,
genre: DataTypes.STRING,
user: DataTypes.JSONB
},
{
createdAt: false,
updatedAt: false,
timestamps: false,
tableName: "Book",
paranoid: true,
schema: "public"
}
);
};
查询以查找 user.id 等于 2 的所有位置
Book.findAll({
where: {
"user.id": {
[Op.eq]: "2"
}
}
})
Sequelize 正在生成如下查询
SELECT id, name, genre, user, authorId FROM public.Book AS Book WHERE
("Book.user"#>>'{id}')
= '2';
导致以下错误
错误:列“Book.user”不存在第 1 行:...e,用户,作者 ID FROM public.Book AS Book WHERE ("Book.user... ^
在使用 sequelize 根据用户对象的 id 进行查询时需要一些帮助
【问题讨论】: