WedX - журнал о программировании и компьютерных науках

Разбивка на страницы не работает для списка в Grails

У меня не работает разбивка на страницы в grails. Я также не вижу кнопки разбиения на страницы в графическом интерфейсе. Я вижу весь список в графическом интерфейсе.

def lists={
params.max = Math.min(params.max ? params.int('max') : 10, 100) 
def submittedList=[],InstanceList=[]
submittedList=FicheRequest.executeQuery("select fr.id,fr.MOSSNumber from FicheRequest fr where  fr.status=?",['Submitted']) 
    if(submittedList.size()>0){
    def sortedSubmittedList=new MossNumberSorting().getSortedMossNo(submittedList as ArrayList[])
    sortedSubmittedList.each{sortedId->InstanceList.add(FicheRequest.get(sortedId))}
            }
    else
    flash.message="No Submitted Request exists in the queue"

    return [InstanceList:InstanceList, InstanceTotal: InstanceList.count()] 
}

и в gsp я использую

<div class="paginateButtons">
            <g:paginate total="${InstanceTotal}" />
        </div>

Я также вижу параметр max и offset в URL-адресе.

https://localhost:9090/apps2/lists?offset=0&max=10

Не знаю в чем проблема, подскажите решение

27.05.2012

Ответы:


1

Вероятно, вы забыли передать параметры в строку:
submittedList=FicheRequest.executeQuery("select fr.id,fr.MOSSNumber from FicheRequest fr where fr.status=?",['Submitted'])
попробуйте так:
submittedList=FicheRequest.executeQuery("select fr.id,fr.MOSSNumber from FicheRequest fr where fr.status=?",['Submitted'],[max:params.max,offset:params.offset])
Подробнее:
https://grails.org/doc/latest/ref/Domain%20Classes/executeQuery.html

27.05.2012
  • Нет, это не помогает, получаю тот же результат. Я передаю InstanceList в представление, которое представляет собой список всех экземпляров FicheRequest. 28.05.2012
  • Итак, чего именно вы хотите? Опишите задачу. 28.05.2012
  • Я уже упомянул, что я хочу, как указано выше, вы хотите более подробное объяснение? 28.05.2012

  • 2

    Я нашел грубое решение для разбиения на страницы моего списка массивов. Я могу передать полный список с максимальным значением и значением смещения и получить список, который я хочу показать в моем представлении:

    https://www.intelligrape.com/blog/2010/09/14/grails-pagination-on-filtered-list/

    но это не очень хорошее решение, так как требует загрузки всех значений базы данных для разбиения на страницы. Одно из решений, которое приходит мне на ум, состоит в том, чтобы хранить экземпляры домена в формате, отсортированном по числам мха. Ну, формат числа мха немного сложен; вот почему я использую класс Comparator для его сортировки после извлечения всего экземпляра из БД. Я приветствую лучшие идеи о том, как я могу сохранить свои экземпляры в формате, отсортированном по числам мха, или что-то еще.

    28.05.2012
    Новые материалы

    Как проанализировать работу вашего классификатора?
    Не всегда просто знать, какие показатели использовать С развитием глубокого обучения все больше и больше людей учатся обучать свой первый классификатор. Но как только вы закончите..

    Работа с цепями Маркова, часть 4 (Машинное обучение)
    Нелинейные цепи Маркова с агрегатором и их приложения (arXiv) Автор : Бар Лайт Аннотация: Изучаются свойства подкласса случайных процессов, называемых дискретными нелинейными цепями Маркова..

    Crazy Laravel Livewire упростил мне создание электронной коммерции (панель администратора и API) [Часть 3]
    Как вы сегодня, ребята? В этой части мы создадим CRUD для данных о продукте. Думаю, в этой части я не буду слишком много делиться теорией, но чаще буду делиться своим кодом. Потому что..

    Использование машинного обучения и Python для классификации 1000 сезонов новичков MLB Hitter
    Чему может научиться машина, глядя на сезоны новичков 1000 игроков MLB? Это то, что исследует это приложение. В этом процессе мы будем использовать неконтролируемое обучение, чтобы..

    Учебные заметки: создание моего первого пакета Node.js
    Это мои обучающие заметки, когда я научился создавать свой самый первый пакет Node.js, распространяемый через npm. Оглавление Глоссарий I. Новый пакет 1.1 советы по инициализации..

    Забудьте о Matplotlib: улучшите визуализацию данных с помощью умопомрачительных функций Seaborn!
    Примечание. Эта запись в блоге предполагает базовое знакомство с Python и концепциями анализа данных. Привет, энтузиасты данных! Добро пожаловать в мой блог, где я расскажу о невероятных..

    ИИ в аэрокосмической отрасли
    Каждый полет – это шаг вперед к великой мечте. Чтобы это происходило в их собственном темпе, необходима команда астронавтов для погони за космосом и команда технического обслуживания..


    Для любых предложений по сайту: [email protected]