我的表单上有一个名为“allergies”的特殊输入表单(选择多个),但如果我这样做会返回错误:
Form<Child> form = form(Child.class).bindFromRequest();
从我的服务器端,“无效值”错误。
为了使它几乎工作,我应该将我的字段重命名为“allergies.id”,但我无法改变它。
所以我想忽略这个字段的错误,并做了类似的事情:
form.field("allergies").errors().clear()
然后,如果我做了
if (form.hasErrors())
它返回true,仅用于过敏。
我如何忽略过敏的验证?
感谢您的帮助。
答案 0 :(得分:4)
我不确定操纵列表是否非常聪明。更简洁的方法是仅绑定您想要的字段。 public Form<T> bind(Map<String,String> data, String... allowedFields) {
。
怎么有form.field(“过敏症”).error()。clear()不能正常工作,因为你有一个错误地图,其中关键'过敏'存在空列表。 form.errors().remove("allergies");
应该有用。
答案 1 :(得分:1)
你可以使用:
form.discardErrors();