Поиск по 2 таблицам в последовательности

#mysql #sequelize.js

Вопрос:

Поиск Category работает, как также применить поиск Announcement ?

 const announcementList = await Announcement.findAll({
    include: [
    {
        model: Category,
        where: {
            [Op.or]: [
                {
                    name: {
                    [Op.like]: '%'   keyword   '%' 
                    }
                },
                {
                    'Announcement.description': {
                    [Op.like]:'%'   keyword   '%' 
                 }
                }
            ]
        }
    },
   ]
})
 

Ответ №1:

Вам нужно переместить условия на корневой уровень.
что-то вроде этого:

 const announcementList = await Announcement.findAll({
  where: {
    [Op.or]: [
    {
      '$Category.name



: {
[Op.like]: '%' keyword '%'
}
},
{
'description': {
[Op.like]:'%' keyword '%'
}
}
]
},
include: [
{
model: Category,
},
]
})