在themeleaf教程中,他们教你如何使用两个级别的变量从列表中提取值,例如[[${variable1[__${variable2}__]}]]
,但重点是我想使用以下方法提取值: [[${variable1[${variable2[__${variable3}__]}]}]]
,但我不知道如何正确输入此代码。
我正在尝试使用Spring服务器为mModelAndView.addObject("project",Projects.findById(pid));
和mModelAndView.addObject("local",posto);
提供的对象创建一个HTML元素,其中Projects和posto是具有不同变量的java类。
所以,如果我写下代码的和平,一切都很好并且正确:
HTML& page.html中的Thymeleaf代码:
<div th:each="parametro,row1 : ${project.Lista}"> <p class="info">[[${parametro.pergunta}]]: [[${parametro.rrespostas[0]}]], [[${local.lista_respostas[__${row1.index}__]}]] </p> </div>
因此,所有变量都被themeleaf很好地理解了,结果就是这样:
但重点是我希望[[${local.lista_respostas[__${row1.index}__]}]]
变量将是[[${parametro.rrespostas[0]}]]
索引(rrespostas
变量包含一个数字),这意味着我想要替换这个'0 'rrespostas
值。
我尝试过:
<p class="info">[[${parametro.pergunta}]]: [[${parametro.rrespostas[__${local.lista_respostas[__${row1.index}__]}__}]] </p> <p class="info">[[${parametro.pergunta}]]: [[${parametro.rrespostas[[[${local.lista_respostas[__${row1.index}__]}]]]}]] </p>
我尝试了更多组合尝试提取信息,但没有任何作用。
在themeleaf中有任何想法吗?
答案 0 :(得分:0)
我不确定你能不能做到这一点。
这并不能直接解决您的问题,但是: 在我看来,唯一干净的方法是开始使用处理器。编写自己的文件并不是很难,而且您可以回到Java-Land,编译器会帮助您,并且您可以访问所有库等。
http://www.thymeleaf.org/doc/tutorials/2.1/extendingthymeleaf.html