Sequelize: полнотекстовый поиск с использованием символьных операторов - PullRequest
0 голосов
/ 08 апреля 2020

Поэтому я пытаюсь реализовать postgresql полнотекстовый поиск через Sequelize 3, но есть несколько проблем, в том числе: я не смог добавить функции текстового поиска в текущем предложении where:

where: {
    published: true,
    and: where(
      fn("tsmatch",
        col("tokens"),
        fn("plainto_tsquery", query),
      ),
      true,
    )
},

Я знаю, что мы можем использовать необработанный оператор sql, но проблема в том, что существующая реализация основана на операторах Sequelize, и именно это Sequelize рекомендует для безопасности. Найден хороший ресурс для добавления и повторного использования функции здесь , но я застрял в сочетании с другими параметрами запроса.

1 Ответ

0 голосов
/ 14 апреля 2020

Хорошо, я снова использовал предложение where:

where: {
    published: true,
    where: where(
      fn("tsmatch",
        col("textTokens"),
        fn("plainto_tsquery", text),
      ),
      true,
    )
},

Надеюсь, это поможет другим, столкнувшимся с подобной проблемой.

...