如何从列表中获取列表?

时间:2019-08-27 11:04:18

标签: java spring spring-security thymeleaf

我有一个学科列表(每个用户都有一个),其中包含授权教师的学科。我想将该学科带入其学生的每个学科。我设法带出学科,而不是学生。我用弹簧靴和百里香

我在html中尝试了以下代码:

<ul type="none">
  <li th:each="discipline : ${disciplineList.disciplines}">
  <a href="" th:text="${discipline.name}" class="discipline-name"></a>
    <ul th:name="${discipline.name}" class="discipline-info" th:unless="${#lists.isEmpty(discipline.students)}">
      <p th:each="student : ${disciplines.students}"></p>
      <li th:text="${student.student}"></li>
    </ul>
  </li>
</ul>

我收到一个错误:在null上找不到属性或字段“ students”

如果我尝试

<div th:each="discipline : ${disciplineList.disciplines}">
   <span th:text="${discipline.name}" class="discipline-name"></span>
</div>

我掌握了所有学科。

DisciplineListDto:

String name;
List<DisciplineDto> disciplines;

DisciplineDto:

long id;
@NotEmpty
String name;
List<StudentDto> students;

StudentDto:

int Id;
String student;

我想得到这段文字:

数学 -彼得 -约翰 -丽莎

物理 -丽莎 -阿什利

1 个答案:

答案 0 :(得分:0)

我的错误是我在标签p中写的

th:each="student : ${disciplines.students}"

并关闭它:)

我只需要用li编写所有内容:

<ul type="none">
  <li th:each="discipline : ${disciplineList.disciplines}">
  <a href="" th:text="${discipline.name}" class="discipline-name"></a>
   <ul th:name="${discipline.name}" class="discipline-info" th:unless="${#lists.isEmpty(discipline.students)}">
     <li th:each="student : ${discipline.students}" th:text="${student.student}"></li>      
   </ul>
  </li>
</ul>

感谢@ holmis83,您是对的。