Java 链接中的PostMapping-GetMapping方法-loop存在问题。弹簧靴
我无法将数据发送到我的一个表。 下面您可以看到我的方法:一个是用表单显示模板,另一个是应该添加此操作的方法Java 链接中的PostMapping-GetMapping方法-loop存在问题。弹簧靴,java,spring-boot,spring-data-jpa,Java,Spring Boot,Spring Data Jpa,我无法将数据发送到我的一个表。 下面您可以看到我的方法:一个是用表单显示模板,另一个是应该添加此操作的方法 @GetMapping("/addaction/{id}") public String addAction(Model model, @PathVariable("id") int id ) { Optional<PlantEntity> plantEntity = plantService.getPlantById(id); if
@GetMapping("/addaction/{id}")
public String addAction(Model model, @PathVariable("id") int id ) {
Optional<PlantEntity> plantEntity = plantService.getPlantById(id);
if (plantEntity.isPresent()) {
model.addAttribute("plant", plantEntity.get());
}
return "addaction";
}
@PostMapping("/addaction/{id}")
public String addAction(@ModelAttribute ActionForm actionForm,
@PathVariable("id") int plantId) {
if(!userService.isLogin()) {
return "redirect:/";
}
actionService.addAction(actionForm, plantId);
return "redirect:/plant/"+plantId;
}
还有我的模板:addaction.html
<form method="post" action="'/addaction/'+${plant.getId()}"
th:object="${actionForm}">
<div class="form-group">
<label for="exampleInputEmail1">Name of activity</label> <input
type="text" th:field="*{name}" class="form-control"
id="exampleFormControlInput1" aria-describedby="emailHelp"
placeholder="Name your work">
</div>
<div class="form-group">
<label for="exampleFormControlTextarea1">What you gonna
do?</label>
<textarea class="form-control" th:field="*{description}"
id="exampleFormControlTextarea1" rows="4"></textarea>
</div>
<div class="input-group mb-3">
<div class="input-group-prepend">
<label class="input-group-text" for="inputGroupSelect01">Month of activity</label>
</div>
<select class="custom-select" th:field="*{month}"
id="inputGroupSelect01">
<option value="1">January</option>
<option value="2">February</option>
<option value="3">March</option>
<option value="4">April</option>
<option value="5">May</option>
<option value="6">June</option>
<option value="7">July</option>
<option value="8">August</option>
<option value="9">September</option>
<option value="10">October</option>
<option value="11">November</option>
<option value="12">December</option>
</select>
</div>
<button type="submit" class="btn btn-dark">Action!</button>
</form>
活动名称
你要干什么
做
活动月份
一月
二月
前进
四月
也许
六月
七月
八月
九月
十月
十一月
十二月
行动
主要问题是:当我尝试添加操作时,结果是:
'/addaction/'+$%7Bplant.getId()%7D
有一种循环。我做错了什么?谢谢你抽出时间 您不必通过
”
。spring表达式语言也将在没有的情况下使用
尝试删除如下所示
action=“/addaction/${plant.getId()}”
请参阅Try“/addaction/${plant.getId()}”
谢谢!这个案例稍微复杂一点,但您的链接非常有用:)它与:th:action=“@{/addaction/{id}(id=${plant.getId()})”一起工作
<form method="post" action="'/addaction/'+${plant.getId()}"
th:object="${actionForm}">
<div class="form-group">
<label for="exampleInputEmail1">Name of activity</label> <input
type="text" th:field="*{name}" class="form-control"
id="exampleFormControlInput1" aria-describedby="emailHelp"
placeholder="Name your work">
</div>
<div class="form-group">
<label for="exampleFormControlTextarea1">What you gonna
do?</label>
<textarea class="form-control" th:field="*{description}"
id="exampleFormControlTextarea1" rows="4"></textarea>
</div>
<div class="input-group mb-3">
<div class="input-group-prepend">
<label class="input-group-text" for="inputGroupSelect01">Month of activity</label>
</div>
<select class="custom-select" th:field="*{month}"
id="inputGroupSelect01">
<option value="1">January</option>
<option value="2">February</option>
<option value="3">March</option>
<option value="4">April</option>
<option value="5">May</option>
<option value="6">June</option>
<option value="7">July</option>
<option value="8">August</option>
<option value="9">September</option>
<option value="10">October</option>
<option value="11">November</option>
<option value="12">December</option>
</select>
</div>
<button type="submit" class="btn btn-dark">Action!</button>
</form>