Применение ограничений к результатам поиска Grails
Я разрабатываю приложение с Grails 2.2.2 / MySQL.
Я хотел бы интегрировать плагин Searchable, однако мое приложение является мультитенантным saas-приложением, и мне нужно как-то ограничить результаты, которые возвращаются. Так, например, если я являюсь пользователем своего приложения, принадлежащего организации A, и я ищу продукты, я не должен видеть никаких продуктов, принадлежащих организации B.
В настоящее время у меня есть служба, которая выполняет такое разделение данных при использовании обычных CRUD-страниц Grails, которая работает, применяя ограничения к каждому выполненному запросу критерия. Я также интегрировал этот сервис с плагином Filterpane для запросов в стиле "расширенный поиск".
Можно ли фильтровать результаты поиска аналогичным образом?
1 ответ
Прошло много времени с тех пор, как я изучил это, но я наткнулся на интересную статью о разделении индекса lucene, так что 1) есть один индекс для приложения и 2) результаты поиска для организации A никоим образом не предвзяты материал, который был проиндексирован для организации B (я даже не учел этот второй момент).
Кроме того, для моего приложения я как бы выполнил требование "полнотекстового поиска" (по крайней мере, на короткий срок), используя отличный плагин быстрого поиска для Grails.
Надеюсь, кто-то найдет эти ресурсы полезными.