我看到了使用Thymeleaf和Spring启动进行表单验证的以下内容。
<p th:if="${#fields.hasErrors('datePlanted')}" th:errors="*{datePlanted}">Incorrect date</p>
现在我不明白:这个领域对象来自哪里?这是Spring准备的吗?我在这里迷路了。
答案 0 :(得分:0)
您可以查看百里香的文档https://www.thymeleaf.org/doc/tutorials/2.1/thymeleafspring.html#field-errors
<p th:if="${#fields.hasErrors('datePlanted')}" th:errors="*{datePlanted}">Incorrect date</p>
此处的所有标签如th:if,th:错误来自百日咳模板。 Spring Boot没有任何内容。因为这是您申请的前端。
让我们有输入字段,例如使用Thymeleaf,你提交的是字段,然后当你调用fields.hasErrors时,它会看到这个字段的任何错误。
<input type="hidden" class="form-control" placeholder="Name"
th:field="*{id}" th:value="*{id}" />
答案 1 :(得分:0)
Fields.java
是包org.thymeleaf.spring4.expression.Fields
由thymeleaf-spring4-xxx.jar
#fields.hasErrors
是调用hasErrors()
类的方法Fields
的语法。
public boolean hasErrors(final String field) {
return FieldUtils.hasErrors(this.configuration, this.processingContext, field);
}