0

プライベート メソッドを呼び出すメソッドがあります。このメソッドはモデルを返します。返されたら、いくつかのオブジェクト値を変更してレンダリングします。jsp で「メッセージ」の値を出力すると、その値が得られません。ここにコードがあります

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 ではなぜこのようなことが起こるのでしょうか?

4

1 に答える 1

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
于 2013-10-17T03:33:50.783 に答える