Renvoyer une donnée thymeleaf vers un controlleur
FerméLumberjack33 Messages postés 8 Date d'inscription samedi 31 décembre 2022 Statut Membre Dernière intervention 31 décembre 2022 - 31 déc. 2022 à 12:51
- Renvoyer une donnée thymeleaf vers un controlleur
- Vers quelle adresse web renvoie ce lien - Guide
- Windows 7 vers windows 10 - Guide
- Transferer photo android vers pc - Guide
- Qwerty vers azerty - Guide
- Renvoyer à la ligne excel - Guide
2 réponses
13 juin 2022 à 19:19
Essaye de faire une recherche avec les mots-clés "SpringBoot Thymeleaf CRUD".
Un exemple avec une entité User : https://www.baeldung.com/spring-boot-crud-thymeleaf
31 déc. 2022 à 12:51
our envoyer l'id de l'enregistrement à supprimer à votre controlleur, vous pouvez utiliser une balise <input>
cachée. Vous pouvez définir la valeur de cette balise en utilisant la syntaxe th:value="${Inj.id_injection}"
, comme ceci:
<form th:action="@{/delInj}" th:object="${InjForm}" method="post">
<input type="hidden" id="id_injection" name="InjForm.id_injection" th:value="${Inj.id_injection}">
<input class="btn btn-danger" type="submit" value="Submit">
</form>
Lorsque l'utilisateur cliquera sur le bouton "Supprimer", la valeur de l'input caché sera envoyée à votre controlleur via la méthode POST. Vous pouvez alors récupérer cette valeur dans votre controlleur en utilisant l'annotation @ModelAttribute
:
@PostMapping("/delInj")
public String deleteInjection(@ModelAttribute("InjForm") InjectionForm form) {
int id = form.getId_injection();
// Supprimer l'enregistrement avec l'id récupéré
...
return "redirect:/userOnly/MyInjections";
}
Notez que vous devrez également définir une classe InjectionForm
qui contiendra un champ id_injection
pour stocker la valeur de l'input caché. Vous pouvez utiliser cette classe comme modèle pour votre formulaire en utilisant l'annotation th:object="${InjForm}"
.
13 juin 2022 à 20:17
J'ai déjà fait des recherches mais la plupart des exemples trouvés (comme celui-ci d'ailleurs) utilise JPA et des ORM (ici Hibernate) contrairement a mon projet.