我正在使用playframework 2.2来开发一个网站(java语言),我使用securesocial来启用facebook / twitter登录。 但在我按照securesocial建议自定义我的登录页面后,我发现在出现错误时没有显示错误消息。
这是LoginView,我将msg传递给view:
class LoginViews(application: play.api.Application) extends DefaultTemplatesPlugin(application)
{
/**
* Returns the html for the login page
* @param request
* @tparam A
* @return
*/
override def getLoginPage[A](implicit request: Request[A], form: Form[(String, String)],
msg: Option[String] = None): Html =
{
views.html.Login(msg)
}
....
}
这是我的HTML:
@(msg: Option[String] = None)
@import play.api.mvc.Request
@import play.api.data.Form
@main("Login -- Tranest", null) {
@msg.map { m =>
@Messages(m)
}
}
答案 0 :(得分:0)
在请求中设置了一个cookie,其中包含默认错误消息(我认为您可以自定义它)
尝试在控制器中添加此项并在视图中传递错误(Option[String]
)。
val error = request.cookies.get("PLAY_FLASH").map(_.value)
这样做可以解决问题。