Outils pour utilisateurs

Outils du site


symfony4:formulaires_formulaire_complet_avec_entite

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Prochaine révision
Révision précédente
symfony4:formulaires_formulaire_complet_avec_entite [2020/03/31 07:32]
marclebrun créée
— (Version actuelle)
Ligne 1: Ligne 1:
-====== Formulaire complet avec entité, ajout et édition ====== 
- 
-===== ArticlesController.php ===== 
- 
-<code php> 
-use App\Entity\Article;​ 
-use Doctrine\Common\Persistence\ObjectManager;​ 
-use Symfony\Component\HttpFoundation\Request;​ 
-use Symfony\Component\Routing\Annotation\Route;​ 
- 
-... 
- 
-/** 
- * @Route("/​articles/​create",​ name="​creer_article"​) 
- * @Route("/​articles/​{id}/​edit",​ name="​editer_article"​) 
- */ 
-public function edit(Article $article = null, Request $request, 
-    ObjectManager $manager) 
-{ 
- 
-    if(!$article) { 
-        $article = new Article(); 
-    } 
- 
-    $form = $this->​createFormBuilder($article) 
-                 ​->​add('​title'​) 
-                 ​->​add('​content'​) 
-                 ​->​add('​image'​) 
-                 ​->​getForm();​ 
-    $form->​handleRequest($request);​ 
- 
-    if($form->​isSubmitted() && $form->​isValid()) { 
-        if(!$article->​getId()) { 
-            $article->​setCreatedAt(new \DateTime());​ 
-        } 
- 
-        $manager->​persist($article);​ 
-        $manager->​flush();​ 
- 
-        return $this->​redirectToRoute('​voir_article',​ [ 
-            '​id'​ => $article->​getId() 
-        ]); 
-    } 
- 
-    return $this->​render('​articles/​edit.html.twig',​ [ 
-        '​formArticle'​ => $form->​createView(),​ 
-        '​editMode' ​   => $article->​getId() !== null, 
-    ]); 
-} 
-</​code>​ 
- 
-===== edit.html.twig ===== 
- 
-<code twig> 
-{% extends '​base.html.twig'​ %} 
-{% form_theme formArticle '​bootstrap_4_layout.html.twig'​ %} 
- 
-{% block body%} 
- 
-{{ form_start(formArticle) }} 
- 
-{{ form_row(formArticle.title,​ { 
-   '​label':​ '​Titre',​ 
-   '​attr':​ {'​placeholder':​ "Titre de l'​article"​},​ 
-}) }} 
- 
-{{ form_row(formArticle.content,​ { 
-   '​label':​ '​Contenu',​ 
-   '​attr':​ {'​placeholder':​ "​Contenu de l'​article"​},​ 
-}) }} 
- 
-{{ form_row(formArticle.image,​ { 
-   '​label':​ '​Image',​ 
-   '​attr':​ {'​placeholder':​ "URL de l'​image"​} 
-}) }} 
- 
-<button type="​submit"​ class="​btn btn-primary">​ 
-{% if editMode %} 
-   ​Enregistrer les modifications 
-{% else %} 
-   ​Ajouter l'​article 
-{% endif %} 
-</​button>​ 
- 
-{{ form_end(formArticle) }} 
- 
-{% endblock %} 
-</​code>​ 
  
symfony4/formulaires_formulaire_complet_avec_entite.1585639962.txt.gz · Dernière modification: 2020/03/31 07:32 par marclebrun