Symfony modifier utilisateur info modal

Par Anis Brahmi, il y a 5 ans


Décrivez ici votre problème ou ce que vous cherchez à faire.
je cherche une solution pour crier un model pour modifier les infos de l'utilisateur voici mon code.

funtion edit /** * @Route("/entrepreneur/{slug}/edit", name="entrepreneur_edit_admin", methods={"GET","POST"}) */ public function editEntrepreneur(Request $request, Entrepreneur $entrepreneur): Response { $form = $this->createForm(EntrepreneurAdminType::class, $entrepreneur); $form->handleRequest($request); if ($form->isSubmitted() && $form->isValid()) { $this->getDoctrine()->getManager()->flush(); return $this->redirectToRoute('entrepreneur_index'); } return $this->render('entrepreneur/admin/editAdmin.html.twig', [ 'entrepreneur' => $entrepreneur, 'form' => $form->createView(), ]); } page index <table class="table table-bordered"> <thead> <tr> <th>Email</th> <th>Nom</th> <th>Prenom</th> <th>Etat</th> <th>actions</th> </tr> </thead> <tbody> {% for entrepreneur in entrepreneurs %} <tr> <td>{{ entrepreneur.email }}</td> <td>{{ entrepreneur.nom }}</td> <td>{{ entrepreneur.prenom }}</td> <td>{% if entrepreneur.etat %} <span class="fa fa-check-square text-success"></span> {% else %} <span class="fa fa-user-times text-danger"></span> {% endif %} </td> <td class="text-center"> <a href="{{ path('entrepreneur_show_admin', {'slug': entrepreneur.slug}) }}"><span class="fa fa-eye text-info" /></a> {{ render(controller('App\\Controller\\AdminController::editEntrepreneur', {slug: entrepreneur.slug})) }} </td> </tr> {% else %} <tr> <td colspan="8">Aucun enregistrement trouvé</td> </tr> {% endfor %} </tbody> </table> page modal <button style="border-style: none; background-color:transparent;" data-toggle="modal" data-target="#exampleModalLong{{ entrepreneur.id }}"> <span class="fa fa-edit text-success" /> </button> <div class="modal fade" id="exampleModalLong{{ entrepreneur.id }}" tabindex="-1"> <div class="modal-dialog"> <div class="modal-content"> <div class="modal-body"> <div class="row d-flex justify-content-center"> <!-- Contact Form --> <div class="col-md-8 col-sm-6 col-xs-12"> {{ form_start(form) }} <div class="row"> <div class="col-md-6"> <div class="form-group"> {{ form_label(form.nom)}} {{ form_widget(form.nom)}} </div> </div> <div class="col-md-6"> <div class="form-group"> {{ form_label(form.prenom)}} {{ form_widget(form.prenom)}} </div> </div> </div> <div class="row"> <div class="col-md-12"> <div class="form-group"> {{ form_label(form.cin)}} {{ form_widget(form.cin)}} </div> </div> <div class="col-md-12"> <div class="form-group"> {{ form_label(form.genre)}} {{ form_widget(form.genre)}} </div> </div> <div class="col-md-12"> <div class="form-group"> {{ form_label(form.datenais)}} {{ form_widget(form.datenais)}} </div> </div> <div class="col-md-12"> <div class="form-group"> {{ form_label(form.villenais)}} {{ form_widget(form.villenais)}} </div> </div> <div class="col-md-12"> <div class="form-group"> {{ form_label(form.tel)}} {{ form_widget(form.tel)}} </div> </div> <div class="col-md-12"> <div class="form-group"> {{ form_label(form.email)}} {{ form_widget(form.email)}} </div> </div> <div class="col-md-12"> <div class="form-group"> {{ form_label(form.etat)}} {{ form_widget(form.etat)}} </div> </div> <div class="col-md-12"> <div class="form-group"> {{ form_label(form.carte)}} {{ form_widget(form.carte)}} </div> </div> <div class="col-md-12 text-center"> <div class="form-group"> <button type="submit" class="btn btn-primary">Modifer votre compte</button> </div> </div> </div> {{ form_end(form) }} </div> </div> </div> </div> </div> </div>

Ce que je veux

Décrivez ce que vous cherchez à obtenir.

Ce que j'obtiens

Décrivez vos éventuelles erreurs ou ce que vous obtenez à la place de ce que vous attendez :(

3 réponses

Grafikart, il y a 5 ans

Merci de spécifier le problème (erreur rencontrée)

Anis Brahmi, il y a 5 ans

mon problème est j'ai n'est pas d'erreurs juste une refresh de la page, mon but et de soumettre le form a partir un modal

Grafikart, il y a 5 ans

Là il faut faire du JavaScript du coup et poster ça en Ajax (ou faire une iframe à la limite si tu veux éviter le JavaScript)