hasErrors
用途
检查bean/请求的作用域/model是否有错误, 如果不调用body标记.通常使用 eachError 或 renderErrors
集合.
示例
检查所有bean及其作用域有错误:
<g:hasErrors>
<g:eachError><p>${it.defaultMessage}</p></g:eachError>
</g:hasErrors>
检查是否在指定的bean中有错误:
<g:hasErrors bean="${book}">
<g:eachError><p>${it.defaultMessage}</p></g:eachError>
</g:hasErrors>
检查book bean的title域是否有错误:
<g:hasErrors bean="${book}" field="title">
<div class="errors">
<g:renderErrors bean="${book}" field="title" as="list" />
</div>
</g:hasErrors>
作为一个方法在仅仅在 GSP 被调用. 在这种情况下,检查出了一个域的错误,我们设置这个div的 CSS, 把错误以醒目的方式显示出来. for example:
<div class="prop ${hasErrors(bean:user,field:'login', 'errors')}">
<label for="login"><input type="text" name="login" />
</div>
检查嵌套对象的错误:
<div class="prop ${hasErrors(bean:parent, field:'child.name', 'errors')}">
<label for="child.name"><input type="text" name="child.name" value="${fieldValue(bean:parent,field:'child.name'} />
</div>
描述
属性
bean
(可选) - 检查错误的bean
model
(可选) - 检查错误的model的名称
field
(可选) - 检查bean/model里的某个域的错误
来源
Show Source
def hasErrors = {attrs, body ->
def errorsList = extractErrors(attrs)
if(errorsList) {
out << body()
}
}