Проекция 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