我有簡單的形式,只有兩個領域我做了錯我的表單驗證
@Constraints.Required
public String name;
@Constraints.Required
public String slug;
呈現爲:
@helper.form(routes.Add.create()) {
<input type="text" name="name" id="new-category-name"/>
<input type="text" name="slug" id="new-category-slug"/>
<input type="submit" value="save"/>
}
而且我有一個問題,因爲當我首先沒有提交表單值,我看錯誤,這是確定的,但是當這個驗證後,我再次提交我的表單(這次與值),我再次看到我的錯誤
我有記錄器request.body()和form.errors:
[debug] application - DefaultRequestBody(Some(Map(name -> ArrayBuffer(name), slug -> ArrayBuffer(slug))),None,None,None,None,None,false)
[debug] application - {name=[ValidationError(name,[error.required],[])], slug=[ValidationError(slug,[error.required],[])]}
Thans對您有所幫助
我創建行動:
public Result create(){
categoryForm = categoryForm.bindFromRequest();
if(categoryForm.hasErrors()){
return ok(add.render(categoryForm));
} else {
Category category = new Category();
CategoryForm cf = categoryForm.get();
category.setName(cf.name);
category.setSlug(cf.slug);
categoryRepository.save(category);
return redirect(routes.Edit.edit(category.getId()));
}
}
當我第一次提交沒有值的表單時,向我們展示'create'行動 – biesior 2014-09-26 14:50:03
「,我看到錯誤,這是可以的,但是在驗證後,我再次提交表單(這次是值),我看到我的錯誤」 。從一開始就嘗試提交正確的表單會發生什麼? – c4k 2014-09-29 10:04:07
當我提交這個表單正確,一切都很好,類別對象存儲在db – dwilda 2014-09-30 20:25:44