假设我有两个控制器方法:Users.preInsert和Users.insert。 preInsert方法用于显示用户输入表单(GET),而insert方法负责实际插入(POST)或调用'insert'服务。 这是路线的样子:
GET /users/add controllers.Users.preInsert(...)
POST /users/add controllers.Users.insert(...)
那么如何重定向请求(POST到GET)而不会丢失从插入服务返回的错误消息等参数以及客户端输入的值,以便可以在条目表单中访问和显示它们。参数可能涉及一些复杂的对象。我已经使用缓存API实现了它,但我想知道是否有更好的方法。
答案 0 :(得分:2)
这就是Form
对象(http://www.playframework.com/documentation/2.1.1/ScalaForms)的确切目的。
我认为routes
中存在错误,可能如下:
GET /users/add controllers.Users.preInsert(...)
POST /users/add controllers.Users.insert(...)
你应该明确地看一下form sample。
答案 1 :(得分:0)
您无需将其重定向回preInsert
操作,而是在insert
检查开始时检查表单是否有错误,并且它已显示包含表单的视图(preInsert中使用的相同)。它在处理绑定失败