如何通过关联表进行模糊搜索?
现在只支持 article 表中的 title 和 introduction 字段进行模糊搜索
相关代码
Article.hasMany(models.tag, {
foreignKey: 'article_id',
constraints: false
})
Tag.belongsTo(models.article, {
foreignKey: 'article_id',
constraints: false
})
const { rows, count } = await
ArticleModel.findAndCountAll({
distinct: true,
limit: pageSize,
offset: (pageNum - 1) * pageSize,
order: [['id', 'DESC']],
attributes: [
'id',
'title',
'author',
'cover',
'introduction',
'created_at'
],
where: {
[Op.or]: [
{
title: {
[Op.like]: `%${wd}%`
}
},
{
introduction: {
[Op.like]: `%${wd}%`
}
}]
},
include: [
{
model: TagModel,
required: false,
attributes: ['name']
},
]
})
我希望支持 article 表中的 title 和 introduction 字段并且也支持 TagModel 中的name进行模糊搜索
即输入关键字,只要文章标题和描述以及文章标签中其中一个符合条件就返回该条数据
请问下改怎么解决
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
同样遇到了这种问题,请问楼主解决了吗?
@梦的旅程 好像不行,你是怎么写的
曾经我也在sequelize 里面遨游,现在我放弃了