4

可以在控制器内的 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)           
    }
4

1 回答 1

4

这是一个例子:

领域:

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
    }
}

此外,您可以在此处找到更多相关信息:参考文档

于 2011-04-17T23:52:26.587 回答