Проекция Grails Поиск результатов поиска плагина

У меня есть сложная конфигурация для поиска для класса домена и связанных с ним классов домена. когда я ищу около 200 результатов (максимум:200), это занимает слишком много времени, чтобы ответить.

в результирующем наборе у меня есть все поля (простые или ассоциативные), указанные для поиска в классе моего домена. Мне нужно вернуть только список идентификаторов и игнорировать другие поля класса домена. Является ли это возможным? Я хочу сделать это для ускорения моего поиска. этот список идентификаторов будет использоваться для запроса другой базы данных no-sql. кажется, что выборка всех полей замедляет мой поиск.

1 ответ

Решение

Я думаю, что вы можете достичь того, что вы хотите (пусть свойство будет доступно для поиска, но не возвращать его), установив для свойства store значение no.

Например:

class MyDomain {
    String name
    String email

    static searchable = {
        email index:'analyzed', store:'no'
        name index:'analyzed'
    }
}

В этом домене я говорю, что имя и электронная почта индексируются и анализируются (чтобы их можно было искать), но свойство электронной почты не сохраняется, поэтому при возврате объекта оно будет нулевым. Для других свойств проверьте: http://grails.org/Searchable+Plugin+-+Mapping+-+Searchable+Property

Другие вопросы по тегам