【发布时间】:2012-10-24 20:19:40
【问题描述】:
我正在将参数和客户 obj 从控制器传递到 gsp 页面。例如
render(view:"finish", params: params, model:[customer: customer])
finish.gsp 使用传递的参数和客户对象打印表单字段。例如${params.name} 或${customer.name}。在选择完成按钮后的完成页面上,我想传递参数或客户对象值以保存客户对象。所以我在finish.gsp上设置隐藏字段。
<g:actionSubmit action="save" value="Done" class="button1" params ="${customer}"/>
<g:hiddenField name="kbc" value="${params}" />
</g:form>`
我可以看到 println params.kbc 的保存操作方法的值
[contactBy:email, appointmentDate:Wed Oct 24 14:54:00 CDT 2012, appointmentDate_day:24, appointmentDate_hour:14, sentReminder:on, appointmentDate_month:10, emailAddress:jaimataji@jaimataji.com, lookingFor:0, appointmentDate_year:2012, appointmentDate_minute:54, _action_finish:Next, myGroup:0, _sentReminder:, description:test, name:abc, contactNo:7777777777, action:index, controller:customer]`</b>
但是当我尝试访问params.kbc.name 时,它会抛出错误提示
No such property: name for class: java.lang.String
我不知道我哪里出错了。如果我错了,请纠正我。
【问题讨论】: