(快速参考)

errors

用途

Spring Errors 接口的一个实例,其中包含与此控制器关联的错误。

示例

class DemoController {

    static allowedMethods = [updatePerson: 'PUT']

    def generateReport(int size) {
        if(hasErrors()) {
            errors.allErrors.each {
                println it
            }
        }
    }

    def updatePerson(SomeDomainClass sdc) {
        // if params.id is found then a call
        // will have been made to SomeDomainClass.get(params.id)
        // to retrieve the instance from the database.
        // if no matching instance is found then
        // sdc will be null and the controller
        // will not have errors.  If params.id
        // is found and an exception occurs while
        // trying to retrieve the instance then
        // sdc will be null and an error will
        // be added to the controller
        if(sdc == null && hasErrors()) {
            errors.allErrors.each {
                println it
            }
        }
    }
}

说明

Grails 在处理请求时使用 errors 属性。在处理动作参数时发生类型转换时,或者在尝试从数据库检索域类命令对象时抛出异常时,将生成错误。

参见 hasErrors