【发布时间】:2012-11-19 15:52:11
【问题描述】:
如何在不使用重定向的情况下将整个模型从一个控制器传递到另一个控制器?
【问题讨论】:
标签: grails model controller forward chain
如何在不使用重定向的情况下将整个模型从一个控制器传递到另一个控制器?
【问题讨论】:
标签: grails model controller forward chain
我为此苦苦挣扎了很久,所以决定回答我自己的问题...
forward 方法很可能。与chain 方法不同,documentation 没有提及model 属性,但[至少在 grails 2.1.1 中] 它实际上是受支持的。
在控制器一中:
def model = [
firstname: params.firstname,
lastname: params.lastname
]
forward(controller:"controllerName",action:"index", model:model)
在控制器二中:
render (view: "/page.gsp")
在 page.gsp 中
Welcome ${firstname} ${lastname},
...
就这么简单……
【讨论】:
如果你想传递整个对象(其中包含自己的方法),请参考我在Best way to pass objects between controller actions in grails上的回答
关键是1)在源动作中使用“链动作”,2)在目标动作中使用chainModel
【讨论】: