繁体   English   中英

尝试在Thymeleaf中使用动态字段

[英]Trying to use dynamic fields in Thymeleaf

在themeleaf教程中,他们教您如何使用两个级别的变量从列表中提取值,例如[[${variable1[__${variable2}__]}]]但要点是我想使用以下方法提取值: [[${variable1[${variable2[__${variable3}__]}]}]]但我不知道如何正确键入此代码。

我正在尝试使用Spring服务器通过mModelAndView.addObject("project",Projects.findById(pid));给定的对象来创建HTML元素mModelAndView.addObject("project",Projects.findById(pid)); mModelAndView.addObject("local",posto); 其中Projects和posto是具有不同变量的Java类。

因此,如果我编写这种代码,那么一切都很好并且是正确的:

page.html中的HTML和Thymeleaf代码:

 <div th:each="parametro,row1 : ${project.Lista}"> <p class="info">[[${parametro.pergunta}]]: [[${parametro.rrespostas[0]}]], [[${local.lista_respostas[__${row1.index}__]}]] </p> </div> 

因此,它们易于理解所有变量,这就是结果:

代码结果

但是关键是我希望[[${local.lista_respostas[__${row1.index}__]}]]变量将是[[${parametro.rrespostas[0]}]]索引( rrespostas变量包含一个数字),这意味着我想用rrespostas值替换此“ 0”。

我尝试了:

  <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> 

我尝试了更多组合以尝试提取信息,但是没有任何效果。

有什么想法可以在他们那里做吗?

我不确定您可以完成这项工作。

这不能直接解决您的问题,但是:我认为唯一的干净方法是开始使用处理器。 编写自己的代码不是很困难,并且拥有返回Java-Land的巨大好处,在Java-Land中编译器可以帮助您,并且您可以访问所有库等。

http://www.thymeleaf.org/doc/tutorials/2.1/extendingthymeleaf.html

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM