Javascript 如果Sequelize中不存在嵌套记录,如何获取所有记录
如果子记录在Sequelize上不存在,我希望获取所有父记录,如下面的代码获取所有带有if嵌套记录的记录Javascript 如果Sequelize中不存在嵌套记录,如何获取所有记录,javascript,node.js,postgresql,sequelize.js,Javascript,Node.js,Postgresql,Sequelize.js,如果子记录在Sequelize上不存在,我希望获取所有父记录,如下面的代码获取所有带有if嵌套记录的记录 const posts = await Post.findAll({ order: [ ['createdAt', 'DESC'] ], include: [{ model: db.replies, as: 'replies', createdAt: 'DESC' }] }) 上述代码从Post获取所有数据,无
const posts = await Post.findAll({
order: [
['createdAt', 'DESC']
],
include: [{
model: db.replies, as: 'replies',
createdAt: 'DESC'
}]
})
上述代码从Post
获取所有数据,无论回复是否存在,但出于某种原因,我想获取所有Post
,这些Post不包含任何回复
,这意味着子记录不存在
请问,我怎样才能做到这一点
谢谢您可以使用如下语法从父模型的“where”对象引用嵌套模型的列:“$AssociatedTableName.columnName$”
尝试添加:
where: {
'$replies.id$': null
},
和必填项:false
结果将是:
const posts = await Post.findAll({
where: {
'$replies.id$': null
},
order: [
['createdAt', 'DESC']
],
include: [{
model: db.replies, as: 'replies',
createdAt: 'DESC',
required: false
}]
})
您可以使用如下语法从父模型的“where”对象引用嵌套模型的列:“$AssociatedTableName.columnName$”
尝试添加:
where: {
'$replies.id$': null
},
和必填项:false
结果将是:
const posts = await Post.findAll({
where: {
'$replies.id$': null
},
order: [
['createdAt', 'DESC']
],
include: [{
model: db.replies, as: 'replies',
createdAt: 'DESC',
required: false
}]
})