我有以下型号:
AuthorModel.hasMany(BookModel);
BookModel.belongsTo(AuthorModel);
我想选择一个作者,其名称或其中一本书的标题与搜索字符串匹配。
类似的东西:
Author.findOne({
where: {
[Op.or]: [
{ name: 'test'},
{'books.title':'test'}
]
},
include: [{
model: Book
}]
})
无论我尝试什么,我总是最终得到:Unknown column 'books.title' in 'where clause'
答案 0 :(得分:1)
您只需在where
内移动include
条款。
Author.findOne({
include: [{
model: Book,
where: {
[Op.or]: [
{ '$author.name$': 'test'},
{ title: 'test'}
]
},
}]
})