2013-10-16 8 views
0

我有調用私有方法的方法。此方法返回模型。一旦它被返回,我改變一些對象值並渲染它。 在jsp上打印'message'的值時,我沒有那個值。下面是代碼如果在grails中的私有方法調用後更改對象參數,則不會分配值2.2.4

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打印值的私有方法

private def myMeth() { 
    ..... 
    objvalue.message = 'check message' 
    [objkey: objvalue] 
} 

這用於Grails的1.3.7很好地工作,但爲什麼會發生這種情況在Grails的2.2.4

+0

在哪裏以及如何調用'loadTerm()'? –

+0

對不起。這是myMeth() – user1298426

回答

0

這個工程預期在2.2.4用下面的設置打開index動作。這是你設置的方式嗎?

//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 
相關問題