gpt4 book ai didi

grails - 在 Grails Controller 中重用 Criteria

转载 作者:行者123 更新时间:2023-12-02 08:54:22 25 4
gpt4 key购买 nike

通常,Grails 生成的 Controller 列表方法中有以下最后一行:

[userInstanceList: User.list(params), userInstanceTotal: User.count()]

如果我想通过特定标准限制用户,它看起来像

[userInstanceList: User.list(params) {
ilike('login', '%test%')
}, userInstanceTotal: User.count() {
ilike('login', '%test%')
}]

但这违反了 DRY 原则 - 重用标准闭包的最佳方法是什么?

最佳答案

来自标准生成器的分页结果(结果类为 PagedResultList )有一个属性 totalCount,您可以像调用 count() 一样使用该属性按照相同的标准:

def userInstanceList = User.createCriteria().list(params) {
ilike 'login', '%test%'
}
[userInstanceList: userInstanceList, userInstanceTotal: userInstanceList.totalCount]

关于grails - 在 Grails Controller 中重用 Criteria,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5092857/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com