2012-04-22 59 views
0

可能重複:
Best way to pass objects between controller actions in grails如何從一個控制器傳遞對象實例的動作在其他控制器的Grails

我有一個控制器,一個高清節目應該發送的信息對象在其他控制器的動作表現出來,我試圖

def show() { 
     Person personDomainInstance = getPersonById(params.personId) 

      redirect(controller: "NewPersonController", action: "show", personDomainInstance:personDomainInstance) 
     } 
    } 

當我嘗試這一點,顯示請求的資源(/......//show)不可用。我遵循正確的重定向方法嗎?我可以通過這種方式傳遞對象嗎?還有一個問題是我如何將Person Domain對象綁定到NewPersonDomain對象的域實例對象。

+0

可能的複製:通過Grails的控制器動作之間的物體的最佳方式(HTTP://計算器.com/q/9751211/462015) – 2012-04-23 07:55:23

回答

1

您不能將一個控制器中的實例變量傳遞給另一個控制器,您必須傳遞該id並讓第二個控制器再次加載它。它可能會從第一次加載緩存,所以它會來自緩存,而實際上並不需要重新加載。

0

我以前有過類似的問題,最後我把對象添加到servletContext對象中。如果需要更改每個用戶,建議將其添加到會話中。

servlet上下文信息 - >http://www.grails.org/doc/latest/ref/Controllers/servletContext.html

全螺紋,我以前問這個 - >http://grails.1312388.n4.nabble.com/Passing-a-list-of-Groovy-Object-between-Controllers-td3551395.html

+0

我試過鏈條......它對我來說工作得很好。 – 2012-04-25 00:12:04

相關問題