gpt4 book ai didi

java - Spring - 发送对象列表以查看并返回到仅在 Controller 中发布一个对象

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:42:47 26 4
gpt4 key购买 nike

我想像图片中那样向用户展示并编辑或删除它们。问题是,我如何才能只发布一个对象或在列表中识别一个对象以进行编辑或删除?

我想 edit 和 delete 应该提交 2 个参数:一个用来标识什么样的操作(编辑、删除),另一个用来说明列表中的什么对象要修改(也许是索引?)。

enter image description here

我在 Controller 中有以下方法:

用户表单是一个包装类,是一个用户列表,下面是this教程

/** Default GET form handler for MaganeUsers, in submission will call listusers */
@RequestMapping(value="admin/manageusers", method=RequestMethod.GET)
public String listusers(Model model) {
List<User> users = userService.listUsersDetails();
UserForm userform = new UserForm();
userform.setUserForm(users);

model.addAttribute("userForm", userform);
return "admin/manageusers";
}

这是我打印表格的jsp:

<c:if test="${not empty userForm}">
<sf:form method="post" action="manageusers" modelAttribute="userForm">
<table>
<tr>
<th>No.</th>
<th>Username</th>
<th>User Roles</th>
<th>Enabled</th>
</tr>
<c:forEach items="${userForm.userForm}" var="users" varStatus="i">
<tr>
<td align="center">${i.count}</td>
<td><sf:input path="userForm[${i.index}].username" value="${users.username}"/></td>
<td><sf:input path="userForm[${i.index}].userRole" value="${users.userRole}"/></td>
<td><sf:input path="userForm[${i.index}].enabled" value="${users.enabled}"/></td>
<td><button name="submit" value="i">Edit</button><button name="submit" value="i">Delete</button></td>
</tr>
</c:forEach>
</table>
</sf:form>
</c:if>

以及我管理提交帖子的方法:

/** Default GET form handler for MaganeUsers, in submission will call listusers */
@RequestMapping(value="admin/manageusers", method=RequestMethod.POST)
public String deleteuser(Model model, @ModelAttribute("userForm") UserForm userForm) {
....
// code here?
userService.deleteUser(username);
return "admin/manageusers";
}

我想我应该在 JSP 中添加一些东西来发送参数并在 post holder 中管理它们,但不知道如何做。

谢谢。

最佳答案

  1. 您应该在单独的 Controller 方法中处理编辑和删除。

  2. 将您的提交按钮更改为 input type="button"并处理点击 js 事件,您可以在其中构建逻辑来决定必须调用哪个 Controller 方法(可能可以动态构建 url)并提交它来自js。

  3. 在编辑/删除操作后,您可能需要调用 get,后者会查询数据库,用户可以在您的 jsp 上看到最新的结果。

关于java - Spring - 发送对象列表以查看并返回到仅在 Controller 中发布一个对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31287114/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com