在控制器的条件内调用 namedQuery
Posted
技术标签:
【中文标题】在控制器的条件内调用 namedQuery【英文标题】:Call namedQuery inside a criteria in controller 【发布时间】:2011-04-17 21:26:29 【问题描述】:是否可以在控制器内的 grails 上调用 namedQuery?我知道我可以在另一个namedQuery 中调用namedQuery,但我不想这样做。有任何想法吗?谢谢
用户.groovy
static namedQueries =
filterUsers
eq("age", 21)
MyController.groovy
def r = User.createCriteria().list
eq("id", 1)
filterUsers() //not possible
或者..
MyController.groovy
//not possible too
//Cannot invoke method createCriteria() on null object
def r = User.filterUsers().createCriteria().list
eq("id", 1)
【问题讨论】:
【参考方案1】:这是一个例子:
域:
class User
int age
String userName
static namedQueries =
filterUsers
eq("age", 21)
static constraints =
控制器:
class TestController
def index =
def users = User.filterUsers
and
like 'userName', 'Derek%'
render users as JSON
此外,您可以在此处找到更多相关信息:Reference Documentation
【讨论】:
以上是关于在控制器的条件内调用 namedQuery的主要内容,如果未能解决你的问题,请参考以下文章
如何在没有控制器调用的情况下在项目内的任何地方调用模型方法?