如何在Thymeleaf中将值从一个字段分配给另一个对象的另一个字段?

时间:2019-02-14 15:12:28

标签: spring thymeleaf

我想在单击Delete按钮(每行都有删除按钮)后删除对象(表中的一行)。

如何为th:object="${userToDelete}"分配表中的适当行:逻辑上此操作UserToDelete.id = user.id吗?

 <form th:action="@{/admin/showUsers}" th:object="${userToDelete}" method="post">
  <table class="table table-striped">
    <thead class="thead-dark">
      <tr>
        <th>Id</th>
        <th>Name</th>
        <th>Email</th>
        <th></th>
      </tr>
      </thead>
      </tbody>
      <tr th:each="user : ${users}">
       <td style="color: #000000" th:text="${user.id}">id</td>
       <td style="color: #000000" th:text="${user.name}">Name</td>
       <td style="color: #000000" th:text="${user.email}">Email</td>
       <td>
        <div class="form-group">
          <input type="submit" value="Delete"
            class="btn btn-lg btn-outline-primary btn-block">
        </div>
       </td>
      </tr>
    </tbody>
  </table>
</form>

2 个答案:

答案 0 :(得分:0)

为每个td添加tr

<td>
   <a th:href="${'/admin/delete/' + user.id}">delete</a>
</td>

然后添加GET个端点以进行删除-/admin/delete/{id}

答案 1 :(得分:0)

以下是可能的解决方案:

  1. 添加一个GET端点以使用@RequestParam进行删除;例如:

    <a th:href="@{/admin/user/delete(id=${user.id})}">delete</a>
    

    (如suggested by Ahmet。)

  2. 使用GET添加一个@PathVariable端点;例如:

    <a th:href="${'/admin/delete/' + user.id}">delete</a>
    

    (如suggested by idan。)