ユーザーが「私を覚えている」を選択したかどうかを確認するログインフォームがあり、条件が満たされている場合は、電子メールフィールドに自動的に入力されます。
これは私のフォームオブジェクトです:
val loginForm = Form(
tuple(
"email" -> email,
"password" -> text(minLength = 3),
"remember" -> boolean
)
)
セッションに KV ペアが保存されている場合があります ( "remember" -> email: String
)。このメールを として返す機能がありますOption[String]
。
これは、ログイン ページをレンダリングする関数です。Form オブジェクトと、認証エラーの中継に使用されるviews.html.login
オプションを受け入れる Template です。message: String
def login = Action {
request => {
logRequest(request)
if (UserInfo.isAuth(request.session)) {
Redirect(routes.Application.index())
}
else {
val email = UserInfo.getRememberedEmail(request.session)
if (email.isDefined) {
Ok(views.html.login(loginForm.fill(email.get, "", true)))
}
else {
Ok(views.html.login(loginForm))
}
}
}
}
で問題が発生すると思いますOk(views.html.login(loginForm.fill(email.get, "", true)))
。フォームのエラーを確認したところ、次のことがわかりました。
{"remember":["error.boolean"]}