индекс Grails для поиска по нулевому значению - PullRequest
0 голосов
/ 29 августа 2011

Я пытаюсь использовать searchable для поиска значений по пустому полю. Или, если на то пошло, даже индексировать идентификатор из поддоменов.

class Classified
{
    searchable = {
        only = ['id','title']
        id name: 'classified_id'
        title name: 'classified_title'
    }

    String title
    Dealer dealer
}

class Dealer
{
    String name
}

Я хочу просто проиндексировать идентификатор_дилера, который будет существовать в таблице объявлений, для ссылки на дилера. Тогда я хочу, чтобы иметь возможность искать объявления по нулевым дилеру_ид и числовому дилеру_ид. Я пытался сделать поиск дилера доступным для поиска, но проблема в том, что если дилера нет, а свойство classic.dealer_id равно нулю, оно никогда туда не попадет.

1 Ответ

1 голос
/ 29 сентября 2011
  1. Вы можете попробовать сопоставить дилера как компонент.Таким образом, этот дилер содержится в индексе объявлений для удобства поиска.
  2. По умолчанию нулевые значения не индексируются и не могут быть найдены.Так что для полей, которые вы хотите найти для нулевых значений.В частности, укажите searchable для индексирования пустых полей другими значениями (я использую -1) и поиска tht-значения.

Пример,

static searchable = {
    dealer componenet true
}

И внутри дилера

   static searchable = {
        property nullValue "-1"
    }
...