grails验证错误不会显示在视图中

时间:2016-09-24 17:58:29

标签: grails

我确认在将对象发送到视图之前对象上的错误

   trip.riders.each{rider->
       rider.errors.each{it->
            //visually confirming to myself the errors are there
            println it;
       }
   }
   render(view:'edit',model:[trip:trip);
   return;

我确认的错误打印到控制台“对象上的字段错误'字段'里程数......”

然而在渲染时

<g:each in="${trip?.riders}" var="rdr" status='i'>
    <div class='form-category'>
        <div class='error'>
             <g:hasErrors bean="${rdr}" field="mileage">
                 <g:renderErrors bean="${rdr}" field="mileage" as="list" />
            </g:hasErrors>

没有错误出现。这可能发生什么?

更新

我认为问题在于这些问题...... http://forum.spring.io/forum/other-spring-related/grails/97568-haserrors-true-disappears 似乎hibernate在某些情况下会以导致验证错误被清除的方式持久存在。

1 个答案:

答案 0 :(得分:0)

尝试

<g:hasErrors>
    <g:eachError> ${it} </g:eachError>
</g:hasErrors>

如果您使用&#34; rejectValue()&#34;添加了自定义错误方法,validate()或save()方法将删除添加到域实例的自定义错误