2016-06-26 2 views
0

私がモデルにこれを追加している:誤った値を持つthymeleafで隠し入力

model.addAttribute("team", team); 
model.addAttribute("players", team.getPlayers()); 
model.addAttribute("inviting", new InvitingPlayerToTeam()); 

そして、このモデルとビューのフラグメント:

<div id = "news" th:fragment="playerList"> 

      <span>Nazwa: </span> 
      <span th:text = "${team.name}">nazwa teamu</span> 
      <br> 
      <span th:each = "player : ${players}" th:utext = "${player.username} + '</br>'">-</span> 
      <br> 
      <br> 
      <form method = "POST" th:action="@{/team/invitePlayer}" th:object = "${inviting}"> 
       Nazwa <input type = "text" th:field = "*{username}"> 
       <input type = "hidden" th:field = "*{teamId}" th:value="${team.id}" > 
       <br> 
       <input type = "submit" value = "Zaproś"> 
      </form> 
    </div> 

そして、何が間違っているの?ポストメソッドフィールドでは、inviting.usernameの値は適切ですが、inviting.teamIdは0です。問題はどこですか?

答えて

0

th:value="${team.id}"を削除してください。この値を再度設定する必要はありません。

コントローラの正しい値でフォームバッキングBeanを設定する必要があります。

inviting.setTeamId(...)

+0

しかし...どのように私はteam.idとしてinviting.teamIdを設定することができますか? – Bambelal

関連する問題