我有这样的事情:
<form action="/" th:object="${index}">
<ul class="error" th:if="${#fields.hasAnyErrors()}" th:remove="all-but-first">
<li th:each="error : ${#fields.detailedErrors()}" th:utext="${index.fieldErrorText(error)}">DETAILED ERROR</li>
</ul>
</form>
调用$ {index.fieldErrorText(error)}工作正常,但我想更进一步。因为我有th:object =“$ {index}”我希望能够做到这样的事情:
*{fieldErrorText(error)}
但在这种情况下,它会查找索引上的错误,而不是来自th:每个变量,并且无法找到“属性或字段'错误”。
我尝试了其他组合:* {fieldErrorText($ {error})}(意外的令牌。预计'rparen())'但是'lcurly({)'),* {fieldErrorText(__ $ {error} __ )}(无法处理(241)'ñ';似乎做了一个toString或者什么)和* {fieldErrorText(__ error__)}(找不到属性或字段'错误'。
有没有人知道这种情况的正确语义?
答案 0 :(得分:0)
试试这个
*{fieldErrorText(__${error}__)}
根据文档,您需要进行一些预处理。
http://www.thymeleaf.org/doc/tutorials/2.1/usingthymeleaf.html#preprocessing