[英]Values are not assigned if object parameters are changed after private method call in grails 2.2.4
我有一个调用私有方法的方法。 此方法返回模型。 一旦返回,我将更改一些对象值并进行渲染。 在jsp上,当我打印“ message”的值时,我没有得到该值。 这是代码
def model = myMeth();
model.objkey.message = 'check message'
render(view: "index", model: model)
私人方法
private def myMeth() {
.....
[objkey: objvalue]
}
&gsp
<div class="message">${objkey?.message}</div>
但是,如果我在返回之前用私有方法在消息中添加值,那么它的值会打印在gsp上。
这是在gsp中打印值的私有方法
private def myMeth() {
.....
objvalue.message = 'check message'
[objkey: objvalue]
}
这过去在grails 1.3.7中很好用,但是为什么在grails 2.2.4中会发生这种情况
在以下设置击中index
操作的情况下,此操作按2.2.4中的预期进行。 这是您设置的方式吗?
//controller
def index(){
def model = myMethod()
model.objectKey.message = 'check message'
render view: "index", model: model
}
private def myMethod(){
def objectVal = [:]
[objectKey: objectVal]
}
//grails-app/views/<controllerName>/index.gsp
<div>${objectKey?.message}</div> //renders appropriate message
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.