0
當我嘗試從帶有驗證錯誤的表單中提取用戶時,出現錯誤。從表單中獲取對象與框架2.0中的錯誤
我在routes
文件配置了以下路線:
GET /users/:user controllers.UsersController.viewUser(user: models.User)
GET /users/:user/edit controllers.UsersController.editUser(user: models.User)
這是好的,在這一點上,我可以呈現從我的斯卡拉模板,用戶視圖的鏈接:
routes.UsersController.viewUser(myUserObject)
我的問題是,在我的用戶版形式中,我需要從Form[User]
對象獲得myUserObject
。什麼我目前做的是:
routes.UsersController.viewUser(userForm.get)
然而,當userForm
有任何錯誤,get
方法拋出一個異常,如圖the documentation。
我採取的是通過附加User
參數階視圖,連同Form[User]
參數我經過到現在爲止,我的意思是這種方法,
userEdit.render(user, userForm)
,而不是僅僅
userEdit.render(userForm)
但是,我想知道是否有更合適的解決方案,不涉及包括一個額外的參數。
在此先感謝。
驗證錯誤後,表單應該填入用戶輸入的信息,而不是已經存在於數據庫中的信息。這條指令是否會覆蓋用戶輸入的信息? – Bustikiller
我這麼認爲,但是當表單包含錯誤時,您可以用用戶數據填寫表單。而不是做'userForm.get',你應該看看'userForm.fold'。在這種情況下,您需要明確處理用戶輸入錯誤數據的情況 – irundaia