[英]Dynamically create variable in Thymeleaf
我在 ${object} 中有一个 object,在 ${attribute} 中有一个字符串。 例如,object 可能是“用户”,属性可能是“电子邮件”
现在我想访问 ${user.email}。 然而,这需要是动态的,因为它也应该适用于 ${article.name} 和其他任何东西。
我尝试了以下串联,但没有一个有效
${__${object.attribute}__}
${__${object}__.__${attribute}__}
${__${object}__+'.'+__${attribute}__}
${${object}+'.'+${attribute}}
你可以使用这个:
<div th:text="${object.__${attribute}__}"></div>
假设您有一个 model 包含以下测试数据:
User user = new User("John", "john.jones@foo.com"); // user has name and email
model.put("object", user);
model.put("attribute", "email");
这将产生:
<div>john.foo@bar.com</div>
唯一需要使用预处理器__${...)__
的地方是attribute
变量。
执行预处理后,您将得到以下 Thymeleaf 表达式:
<div th:text="${object.email}"></div>
然后将以通常的方式对其进行处理,以生成您需要的 HTML。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.