1
グループ化された値ごとに選択リストを表示するフォームアクションを実行しようとしています。これらのリストの1つで値を選択した後、このオブジェクトの名前をパラメータとしてボタンリンクに入れたいが、パラメータ値は空です。どうすればいいのか分かりません。ここでhrefボタンへのthymeleafパスオブジェクト属性の送信
はそのために私のコードです:私のコントローラで
:
@RequestMapping(value="/teacher/depts", method=RequestMethod.GET)
public String depts(Model model) {
model.addAttribute("deptsfields", fieldOfStudyService.findAllFieldsForAllDepartments());
model.addAttribute("field", new FieldOfStudy());
return "teacher/depts";
}
@RequestMapping(value="/deptsfields", method=RequestMethod.POST)
public String deptsfields(@ModelAttribute(value="field") FieldOfStudy field) {
return "teacher/depts";
}
そして、私のhtmlページ:
<form action="#" th:action="@{/deptsfields}" th:object="${field}" method="post">
<table>
<tr>
<th>Wydział</th>
<th>Kierunek</th>
</tr>
<tr th:each="entry : ${deptsfields}">
<td th:text="${entry.getKey().details.departmentFullName}"
th:value="${entry.getKey().details.departmentFullName}"
th:field="*{details.department.details.departmentFullName}"></td>
<td><select id="fieldslist" class="form-control"
th:field="*{details.fieldOfStudyName}">
<option selected="selected" value="">Wybierz...</option>
<option th:each="field : ${entry.getValue()}"
th:value="${field.details.fieldOfStudyName}"
th:text="${field.details.fieldOfStudyName}"></option>
</select></td>
</tr>
</table>
<a th:href="@{/teacher/groups(field=${field.details.fieldOfStudyName}, dept=${field.details.department.details.departmentFullName})}" class="btn btn-info" role="button">Dalej</a>
</form>
私はページ
にリダイレクトしています]ボタンをクリックした後、http://localhost:8080/teacher/groups?field={here should be name but is empty}&dept={here should be name but is empty}
私は間違っているの?
[OK]をしてみてください。誰かが知りたいのであれば、私は通常のボタンのために変更し、私のコントローラでは、メソッドのパラメータとしてRedirectAttributesを使用し、メソッドredirectAttributes.addAttributeで必要なパラメータを追加します)。できます。 – Carath