Checkbox Binding PostRequest

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

Checkbox Binding PostRequest

PostIt59
Hi everybody, I'm new at Spring Boot and Thymeleaf and I have some troubles with checkboxes.
Explanation : I have 2 Entities Event and User with ManyToMany Relation.
I want to create a Form where a User can create an Event. In this form he could choose a list of User concerned by this Event by checking checkboxes dynamically generated by User Entity (database).

Entity User :

public class User implements Serializable{
        @Id @GeneratedValue
        private Long id_user;
        private String username;
        private String password;
        private String nom;
        @ManyToMany
        private Collection<Event> event;
        //getters setters bla bla bla

Entity Event :

public class Event implements Serializable{
        @Id @GeneratedValue
        private Long id_event;
        private String nom_event;
        private String adresse;
        private Collection<User> users;
        //getters setters bla bla bla

Controller :

GETRequest
@RequestMapping(value="/createEvent",method=RequestMethod.GET)
        public String createEvent(Model model,User user){
                List<User> listUser= userRepository.findAll();
                model.addAttribute("listUser", listUser);
                List<User> listUserSelected = new ArrayList<>();
                model.addAttribute("listUserSelected", listUserSelected);
                return EventForm;

HTML FORM :
                bla bla bla
                <th:block th:each="u:${listUser}">
                        <input type="checkbox" name="${u.id_user}" th:value="${u.id_user}"/>       
                        <label th:text="${u.nom}"></label>
                </th:block>

POSTRequest
                                                               
@RequestMapping(value="/saveEvent",method=RequestMethod.POST)
                public String saveEvent(Model model, List<User> listUserSelected){
                eventRepository.save(event);
}

I don't have any troubles to get the user checkboxes. But I don't know how to config checkbox input with Thymeleaf to put datas to listUserSelected and also I didn't find the how to config my post request.

I hope someone can give me the solution :(