1
我是新來的Scala和玩。玩框架2工作與Request.session價值沒有行動功能
我想從視圖中調用一個控制器func,但我不想返回結果類型。 我想要做的是修改Request.session值。
我做的方法是:1)的情況下
1)的情況下
控制器:
def func(id : Int)(implicit request: RequestHeader) = { ... }
路線:
GET /cart/cancel/:id controllers.ProductController.func(id:Int)
但它給了我一個編譯錯誤:在這裏找不到任何HTTP請求標題
所以我做的另一種方法2)的情況下
2)情況下
控制器:
def func(id : Int) = Action { implicit request => ... Ok()}
是。有效。但是這次我返回了Result類型。 所以我有義務改變頁面的狀態
有沒有辦法處理沒有動作功能的會話值(沒有狀態轉換)?
謝謝!
如何在不返回'Result'的情況下做到這一點?我的意思是我怎樣才能完成**案例1)**沒有錯誤? – Augusto
基本上,你不能,控制器是獲取請求並返回響應的東西,而且這個響應必須是有效的響應。意思是,控制器必須返回Ok,NotFound ...這是控制器的定義。在Play中,您必須將控制器定義爲某種Action,並且此操作將傳遞一個返回Result的函數。底線,你只能使用案例2. – Peter
好吧,你說這是一個控制器的定義,我一直在尋找你說的話,但我沒有找到任何讚揚的消息來源聲稱。你能爲我提供一個來源嗎? – Augusto