gpt4 book ai didi

java - Thymeleaf - 访问嵌套对象属性

转载 作者:行者123 更新时间:2023-12-01 21:51:06 26 4
gpt4 key购买 nike

菜鸟问题,我有一个<input>我想使用 Thymeleaf 显示用户的嵌套属性

  • 每个用户都有一个部门
  • 每个部门都有一个名称

我尝试通过发送 List 来访问它用户反对我的表单

<select id="user">                      
<option value="" th:text="-Select-"></option>
<option
th:each="user: ${users}"
th:value="${user.id}"
th:text="${user.name}"
th:attr="data-department=${user.department.name}">
</option>
</select>

Thymeleaf 可以定位嵌套的部门对象(返回 [object, Object] ),但是当尝试访问部门名称时,会出现 SpringExpressionLanguage 异常 name 。部门的。

org.springframework.expression.spel.SpelEvaluationException: EL1007E:(pos 0): Property or field 'name' cannot be found on null

我仍在浏览文档,但尚未找到如何访问它,这可能非常简单。有什么想法吗?

最佳答案

显然,其中一个用户没有部门,因此departemnt为null。 Thymeleaf 无法获取 null 属性的值。这就是你收到错误的原因。在输出之前尝试检查部门不为 null:

<select id="user">                      
<option value="" th:text="-Select-"></option>
<option
th:each="user: ${users}"
th:value="${user.id}"
th:text="${user.name}"
th:attr="data-department=${user.department!=null}?${user.department.name}:'not specified'">
</option>
</select>

关于java - Thymeleaf - 访问嵌套对象属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35191881/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com