2016-12-06 15 views
0

В течение жизни я не могу понять, почему в контроллере, который наследует RestfulController, метод индекса возвращает только 4 строки. Это настройка по умолчанию? Такое же поведение происходит, когда я переопределяю метод, например.Есть ли метод списка по умолчанию для max to gorm для объекта домена в grails 3.2

import grails.rest.* 
import grails.converters.* 

class WidgitController extends RestfulController { 
    static responseFormats = ['json', 'xml'] 
    WidgitController() { 
     super(Widgit) 
    } 

    @Override 
    def index() { 
     def w = Widgit.findAllWhere(isEnabled: true, [max: 10]) //w: sizec4 
     def w2 = listAllResources(params) //w2: size 4 
     respond w 
    } 
} 

Любая помощь будет принята с благодарностью.

ответ

0

Оказалось, что проблема связана с лучшими фокусами при поиске подкачки.

В зависимости от того, как объекты домена будут отображены, мы получим другой результат. В моем случае я был один ко многим отношений, который был билд, как

orders(lazy:false, fetch:"join") 

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

для более чтения смотреть на следующее:

agination-with-hibernate-criteria-and-distinct-root-entity

sorting-and-pagination-with-hibernate-criteria-how-it-can-go-wrong-with-joins