Java 我的表单验证出了什么问题
我有一个只有两个字段的简单表单Java 我的表单验证出了什么问题,java,forms,playframework,playframework-2.3,Java,Forms,Playframework,Playframework 2.3,我有一个只有两个字段的简单表单 @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="
@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"/>
}
谢谢你的帮助
我的创建操作:
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()));
}
}
尝试使用相同的id和名称:
<input type="text" id="slug" name="slug">
你应该考虑使用。使用它们,您一定会创建正确的表单
我警告您再次使用名称为name或id的字段。这会产生冲突。我花了很多时间才明白值为id的id会产生jquery错误。即使使用play helpers也不能解决我的问题。您是否尝试在activator命令提示符中键入clean然后编译。这些命令不是解决方案,由于我已经切换到内置帮助程序,我的问题仍然是如何显示创建操作。当我首次提交没有值的表单时,我看到了错误,这是正常的,但是在验证之后,我再次提交了有值的表单,我看到了错误。当您从一开始就尝试提交正确的表单时,会发生什么情况?当我提交此表单时,一切正常,并且类别对象存储在db中
<input type="text" id="slug" name="slug">