在我的HTML中,我显示了我的所有作业,考试和考勤对象。我想找到这些对象的id并将其传递给控制器,因为我希望用户能够编辑这些对象,为了做到这一点,我需要找到他们的id。编辑对象的按钮将位于对象名称旁边。无论如何,这就是我想要的方式。
这是我的HTML:
div th:each="subject : ${subjects}">
Subject: <h4 th:text="${subject.subjectName}" />
/
<h4> assignments:</h4>
<div th:each="assignment : ${subject.assignment}">
<h4 th:text="${assignment.assignmentTitle}"/>
</div>
<h4> exams:</h4>
<div th:each="exam : ${subject.exam}">
<h4 th:text="${exam.examTitle}"/>
<h4 th:text="${exam.examId}"/>
</div>
<h4>Attendance:</h4>
<div th:each="attendance : ${subject.attendance}">
<h4 th:text="${attendance.attendanceTitle}"/>
</div>
这是我的控制器:
@GetMapping("/allSubjects")
public String shoSubjects(@ModelAttribute("subject") @Valid UserRegistrationDto userDto, BindingResult result, Model model) {
Authentication loggedInUser = SecurityContextHolder.getContext().getAuthentication();
String email = loggedInUser.getName();
User user = userRepository.findByEmailAddress(email);
List<Subject> subjects = user.getSubject();
model.addAttribute("subjects", user.getSubject());
答案 0 :(得分:0)
这是解决方案。我能够找到用户选择编辑的考试ID,并将其带到编辑HTML页面。
我的HTML:
<h4> exams:</h4>
<div th:each="exam : ${subject.exam}">
<h4 th:text="${exam.examTitle}"/>
<a th:href="@{/editExam.html(id=${exam.examId})}">Edit Exam</a>
控制器:
@RequestMapping(value = "/editExam.html{examId}", method =RequestMethod.GET)
public String editExam(@PathVariable String examId) {
return "editExam";
}