В данный момент я работаю над приложением scala, пользователь может заполнить форму, после отправки данные сохраняются в сеансе следующим образом,
OrganisationContactDetailsForm.form.bindFromRequest.fold(
formWithErrors => {
BadRequest(register_organisation_contact_details(formWithErrors))
},
formData => {
Redirect(controllers.routes.ConfirmRegisterAnswersController.show()).addingToSession(
"contact_firstname" -> formData.contact_firstname.toString(),
"contact_lastname" -> formData.contact_lastname.toString(),
"contact_email" -> formData.contact_email.toString(),
"contact_phone" -> formData.contact_number.toString()
)
}
)
Я даю пользователю возможность проверить свои ответы, прежде чем они, наконец, отправят код, в более простой форме, которую я делаю, выполняя следующие действия, с одним фрагментом данных сеанса.
def show(): Action[AnyContent] = Action { implicit request: Request[AnyContent] =>
val form = request.session.get(sessionAttrName).fold(RegisterOrganisationForm.form) { name =>
val formModel = RegisterOrganisationForm(name)
RegisterOrganisationForm.form.fill(formModel)
}
showPage(Ok, form)
}
Есть ли способ, как я могу сделать подобное выше с более чем 1 частью данных сеанса, или есть лучший способ сохранить несколько частей данных сеанса?