我是Scala和Play的新手。
我想从视图调用控制器弹药,但我不想返回结果类型。我想做的就是修改请求。
我所做的方法是: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()}
是。有效。但是这次我返回了结果类型。所以我有义务更改页面状态
是否有任何方法可以处理不采取行动功能的会话值(没有状态过渡)?
谢谢!
您可以使用案例2,然后做类似:
的事情Ok().withSession(
session - "id" + ("id" -> "newID")
)
您可以通过AJAX拨打控制器,例如,将考虑会话的更改,然后将更改应用于UI(如果有),一旦从控制器中获得Ok
状态。如果没有明显的更改,那么您可以在此停止,以下所有与应用程序的交互将使用此新会话。