Первая точка : Здравствуйте, значения из базы данных поступают в; Есть несколько тегов, как сделать так, чтобы при выборе параметра в первом теге предложенные параметры во втором изменились, et c. Вторая точка : значение, выбранное в тегах, должно быть записано в таблицу в базе данных. Подскажите, как это реализовать по принципам mvc, можно ссылку на решения.
CODE: в моем контроллере:
@GetMapping("/form")
public String setForm(ModelMap model) {
Collection<Faculty> facultyAll = this.facultyRepository.findAllBy();
Collection<Specialty> specialtyAll = this.specialtyRepository.findAllBy();
Collection<Group> groupAll = this.groupRepository.findAllBy();
Collection<Subject> subjectAll = this.subjectRepository.findAllBy();
Collection<Teacher> teacherAll = this.teacherRepository.findAllBy();
Collection<Classroom> classroomAll = this.classroomRepository.findAllBy();
Collection<LessonType> lessonTypeAll = this.lessonTypeRepository.findAllBy();
model.addAttribute("facultyAll",facultyAll);
model.addAttribute("specialtyAll",specialtyAll);
model.addAttribute("groupAll",groupAll);
model.addAttribute("subjectAll",subjectAll);
model.addAttribute("teacherAll",teacherAll);
model.addAttribute("classroomAll",classroomAll);
model.addAttribute("lessonTypeAll",lessonTypeAll);
model.addAttribute("schedule",new TestScheduleTable());
return "schedule-form";
}
@PostMapping("/form")
public String submit(@ModelAttribute ("schedule") TestScheduleTable scheduleForm,Model model) {
model.addAttribute("scheduleForm", scheduleForm);
return "form-result";
}
Моя html страничка которая возвращается setForm:
<!DOCTYPE HTML>
<html xmlns:th="http://www.thymeleaf.org">
<head>
<title>Getting Started: Serving Web Content</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
</head>
<body>
<form name='f' action="#" th:action="@{/form}" th:object="${schedule}" method='POST'>
<select>
<option>Не выбран</option>
<tr th:each="faculty : ${facultyAll}">
<option>
<td th:field="*{facultyName}" th:text="${faculty.getFacultyName()}"></td>
</option>
</tr>
</select>
<select>
<option>Не выбран</option>
<tr th:each="speecialty : ${specialtyAll}">
<option>
<td th:field="*{specialtyName}" th:text="${speecialty.getSpecialtyName()}"></td>
</option>
</tr>
</select>
<select>
<option>Не выбран</option>
<tr th:each="group : ${groupAll}">
<option>
<td th:field="*{groupName}" th:text="${group.getGroupName()}"></td>
</option>
</tr>
</select>
<tr>
<td><input value="поставить пару" type="submit" name="submit"/></td>
</tr>
</form>
</body>
</html>