我正在春季学习有关Thymeleaf的知识,并且正在努力适应列表筛选。
官方教程:使用Thymeleaf并未讨论集合过滤和投影,但是我发现Spring上的Thymeleaf使用Spring Expression Language。
本指南指出以下内容:
${collection.?[property == value]}
${collection.![property]}
如果我有一个对象列表,例如一个人列表,这很好。然后,我可以执行类似的操作:
${persons.?[age >= 18]}
选择所有年满18岁的人${persons.![name]}
选择每个人的名字题:
如果我没有对象列表(例如人员列表),而是数字列表或字符串列表怎么办?那我该如何执行选择(过滤)?像numbers.?[>10]
这样的事情行不通。
经过更多搜索后,我在Spring Expression Language文档中找到了答案。
在10.5.11变量中,文档中说明了#this
和#root
变量。
始终定义变量#this并引用当前评估对象(针对不合格的引用,将对其进行解析)。
因此,假设我有一个numbers
用整数填充的列表,请${numbers.?[#this >= 10]}
创建一个包含所有至少为10的数字的新列表。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句