我使用Grails Fields plugin来做到这一点,它的工作原理。
它可以很容易地为表单字段呈现创建默认模板。例如,我有中grails-app/views/_fields/default/_field.gsp
如下:
<%@ page defaultCodec="html" %>
<div class="control-group${invalid ? ' error' : ''}">
<label class="control-label" for="${property}${index ?: ""}">${label}</label>
<div class="controls">
<%= widget.replace("id=\"${property}\"", "id=\"${property}${index ?: ""}\"") %>
<g:if test="${invalid}"><span class="help-inline">${errors.join('<br>')}</span></g:if>
</div>
</div>
正如你从内联显示错误的HTML看到。这里是我的登录表单的一部分:
<g:form controller="home" action="login" >
<f:field bean="user" property="email"/>
<f:field bean="user" property="password">
<g:field type="password" name="${property}" value="${value}"/>
</f:field>
</g:form>
这一切都在您的视图的HTML。查看脚手架模板以查看默认渲染。您可以修改它们以在任何地方显示字段错误。答案中提到的字段插件已经这样做了。 – aldrin
我创建了关于如何创建一个自定义的验证和发布自定义错误消息回到你的观点在这里详细的解答:http://stackoverflow.com/questions/14038905/how-do-i-create-a-custom -validator -with-a-custom-error-message-in-grails/14038908#14038908 – Spider