【发布时间】:2011-10-31 15:08:46
【问题描述】:
我正在使用 Grails 框架开发应用程序,当从 gsp 视图作为方法调用时,我遇到了 hasErrors 问题。
我有一个由数据库中的值(默认值)填充的表单。这些值存储在会话对象中。用户可以编辑表单字段中的值并将结果发送回数据库。在数据被持久化之前,我有一个验证数据的命令对象。如果有错误,命令对象会以相同的形式呈现视图并突出显示错误。
我要做的是让表单字段由存储在会话对象中的值填充,除非命令对象出现错误。在这种情况下,字段应该由用户输入的错误值填充。
这里是sn-p的代码:
<g:textField name="somename" id="someid" value="${hasErrors(bean: commandobject, field: 'somename') ? fieldValue(bean: commandobject, field: 'somename') : session.somevalue}" />
上面代码的问题是,无论在字段中输入的值是对还是错,字段总是以会话对象中的值结束。是否有解决方案,或者我首先做错了什么?
【问题讨论】:
标签: grails groovy ternary-operator gsp