我想知道如何向 hasErrors 方法添加自定义错误,以便 gsp 发现错误。到目前为止我的代码。
def recoverySetup = new RecoverySetup(params)
def onesolOrgkey = OnesolOrgkeyInfo.get(new OnesolOrgkeyInfo(params));
if(onesolOrgkey != null) {
recoverySetup.setOneSolOrgkey(onesolOrgkey)
} else {
recoverySetup.errors.reject('orgkey', 'You must provide a valid Org Key')
}
recoverySetup.validate()
if(recoverySetup.hasErrors()) {
render view: 'create', model: [recoverySetupInstance: recoverySetup]
return
}
Run Code Online (Sandbox Code Playgroud)
正如 Danilo 所说,您可能希望向域类添加约束来为您执行此操作。
在http://grails.github.io/grails-doc/2.2.x/guide/single.html#constraints和http://grails.github.io/grails-doc/2.2.x/ref 中了解有关约束的更多信息/Constraints/Usage.html。
如果出于某种原因您确实想添加约束无法覆盖的自定义错误(我现在无法想象这种情况,但这并不意味着它不存在 :-),您仍然可以这样做以与您发布的内容非常相似的方式:
instance.errors.rejectValue(fieldName, errorCode, message, defaultMessage)
instance.errors.reject(errorCode, message, defaultMessage)
Run Code Online (Sandbox Code Playgroud)
第一个拒绝具体的字段,第二个拒绝一般的 bean。但请记住,当您validate再次调用时,此错误将被重置。
此外,您可以使用以下命令在 grails 中自动显示 bean 的错误:
<g:hasErrors bean="${instance}">
<g:renderErrors bean="${instance}" />
</g:hasErrors>
Run Code Online (Sandbox Code Playgroud)
在此处查看所有选项:https : //grails.github.io/grails-doc/2.2.x/ref/Tags/hasErrors.html
| 归档时间: |
|
| 查看次数: |
5775 次 |
| 最近记录: |