(Quick Reference)

withCriteria

目的
Purpose

Allows inline execution of Criteria queries. See the createCriteria method for reference.

Return value

If no matching records are found, an empty List is returned.

If a projection is specified:

  • returns a single value if it only contains one field
  • a List in case there are multiple fields in the projection

Otherwise, it will return a List of matched instances of the class calling withCriteria.

使用例
Examples

def results = Book.withCriteria {
    def now = new Date()
    between('releaseDate', now-7, now)
    like('title', '%Groovy%')
}

詳細
Description

The withCriteria method allows the inline definition of Criteria. Arguments to the api:grails.orm.HibernateCriteriaBuilder can be passed as the first parameter:

def book = Book.withCriteria(uniqueResult: true) {
    def now = new Date()
    between('releaseDate', now-7, now)
    like('title', '%Groovy%')
}

パラメータ:

Parameters:
  • arguments (optional) - A map of named arguments to be set on the Criteria instance
  • closure - A closure that defines the criteria