Grails Плагин для поиска: Как сделать свойство только для сортировки, но не для поиска

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

    Class User {
        String title
        String Description
        int vote
        Date date
            }
    static searchable = {
            only: ['description','title','vote','date']
            date name: 'sortableTitle1', index: 'not_analyzed'
            vote name: 'sortableTitle2', index: 'not_analyzed'

}

Мне нужно сделать голосование и дату как сортируемый элемент. и это не должно учитываться при поиске
Также я знаю, что это можно сделать с помощью приведенного ниже кода

date name: 'sortableTitle1', index: 'not_analyzed' store:'no'

Но в этом случае список результатов объекта не будет содержать свойства даты, поэтому он не может быть отображен в gsp для отображения.
Итак, как я могу сделать элемент "дата" для отображения, сортировки, а не для поиска в моем GSP.

1 ответ

Я не могу добавить новый комментарий, поэтому вот следующая часть моего ответа:

как вы устанавливаете отображение для класса:

Вы можете объявить порядок сортировки по умолчанию для коллекции в отображении ( документация).

Я надеюсь, что это то, что вам нужно!

Пример найден в документации:

Чтобы "заменить", например, это:

def airports = Airport.list(sort:'name')

Ты можешь использовать

class Airport {
    …
    static mapping = {
        sort name: "desc"
    }
}

И первая часть моего ответа:

Возможно, это не лучшая вещь, но это то, что я сделал для той же проблемы: я установил отображение для своего класса, и Searchable помог мне получить идентификаторы. С идентификаторами я использую метод getAll для получения всех объектов (автоматически сортируется с отображением).

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