为什么我在Thymelaf的锚标签没有重定向到本地文件



我正在尝试使用ThymeleafSpring boot中的a标记重定向到另一个本地网页,但它是不起作用。我正在从同一文件夹中的index.html重定向到addEdit.html

这是我的密码。

index.html

<div class="container">
<p th:text="${message}"></p>
<a th:href="@{/addEdit.html}" class="btn btn-outline-info">Add Employee</a> //not working
<table class="table table-bordered table-dark">
<thead class="">
<tr> 
<th>#</th>
<th>Name</th>
<th>Departmen</th>
<th>Position</th>
<th></th>
<th></th>

</tr>
</thead>

<tbody>
<tr th:each="employee : ${employees}" >
<th th:text="${employee.id}"></th>
<td th:text="${employee.name}"></td>
<td th:text="${employee.department}"></td>
<td th:text="${employee.position}"></td>
<td>
<form action="delete">
<input type="submit" value="Delete" class="btn btn-outline-warning"/>
</form>
</td>
<td>
<form action="edit">
<input type="submit" value="Edit" class="btn btn-outline-info"/>
</form>
</td>
</tr>

</tbody>

</table>
</div>

我的EmployeeController

@Autowired
private employeeRepo repo;

@RequestMapping("/")
public String home(Model model) {
List<Employee> list = new ArrayList<>();
list = repo.findAll();
model.addAttribute("employees",list);
return "index";
}

@PostMapping("/addEmployee")
public void addEmployee(Employee employee,Model model) {
repo.save(employee);
model.addAttribute("message","Add Successfully");
home(model);
}

my addEdit.html

<div class="container bg-light">
<form action="addEmployee">
<input class="form-control form-control-sm" type="text" placeholder="Name" name="name"><br>
<input class="form-control form-control-sm" type="text" placeholder="Department" name="department"><br>
<input class="form-control form-control-sm" type="text" placeholder="Position" name="postion"><br/>
<input type="submit" value="Add Employee" class="btn btn-outline-success btn-lg btn-block">
</form>
</div>

链接中不应包含.html。链接应该指向控制器公开的URL。例如,目前没有公开/addEditurl的控制器方法。

所以更新你的控制器:

@GetMapping
public String addEmployee(Model model) {
// add model attributes here as needed first
return "addEdit" // This refers to the view, so 'addEdit.html'
}

现在更新链接到:

<a th:href="@{/addEdit}" class="btn btn-outline-info">Add Employee</a>

最新更新