我只是想做分页但是直到现在我都无法做到。我有2个域类和一对多的关系。
class User {
static hasMany = [contacts:Contact]
}
class Contact {
static belongsTo = [ user : User ]
}
我有20个联系人。
当我尝试进行这样的查询时:
def maxResult = 20
def startIndex = 0
def contacts = Contact.findAllByUser(user, [max:maxResult, offset:startIndex])
它不起作用。查询正在运行但是与gorm的分页不起作用。结果只是一个联系对象。
当我尝试时;
def startIndex = 0
def contacts = Contact.findAllByUser(user, [offset:startIndex])
结果是20个联系人对象但是当我尝试使用不同的startIndex值时,它也不起作用。对于startIndex = 5,结果也是20个ontact对象。
有没有人对此有所了解。也许我做错了,也许这是gorm的问题。我还没找到答案。谢谢你的回答。
答案 0 :(得分:1)
我还没有尝试使用DynamicFinder做这件事,但是当我查看文档时,你的语法似乎是正确的。作为替代方案,我使用createCriteria来解决分页问题。
def queryResult = Contact.createCriteria().list(max: max, offset: offset) {
and {
/// FILTER ///
user {
eq("id", userInstance.id)
}
}
}