IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Symfony PHP Discussion :

Liaison entre 2 entités ( formulaire ajout mise à jour d'une application)


Sujet :

Symfony PHP

  1. #1
    Candidat au Club
    Homme Profil pro
    ingénieur développement
    Inscrit en
    Mars 2014
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : ingénieur développement

    Informations forums :
    Inscription : Mars 2014
    Messages : 7
    Points : 4
    Points
    4
    Par défaut Liaison entre 2 entités ( formulaire ajout mise à jour d'une application)
    Bonjour,

    J'ai la relation entre 2 entités (Application et mise à jour):

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    /**
         * @ORM\OneToMany(targetEntity="MiseAJour", mappedBy="application")
         **/
        private $misesajour;
     
    /**
         * @ORM\ManyToOne(targetEntity="Application", inversedBy="misesajour")
         * @ORM\JoinColumn(name="mise_a_jour", referencedColumnName="id")
         **/
        private $application;
    Mon problème est le suivant:je voudrais dans mon formulaire de consultation d'infos sur une application ajouter l'onglet ajout d'une mise à jour' . Ce formulaire d'ajout doit créer une Mise à jour rattaché à une application.Il faut donc récupérer l'id de l'application. Comment faut-il coder dans mon controller MiseAjourController et mon twig?

    Mon controller:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    class MiseAJourController extends Controller
    {
     
        public  function  ajoutermiseajourAction($id)
        /*  Affiche  le  formulaire  de  création  d'une  mise  à jour  */
        {
     
            $application = $this->getDoctrine()
            ->getRepository('BaquarasTestBundle:Application')
            ->find($id);
     
            $miseajour = new MiseAJour();
            //$validator  =  $this->get('validator');
            //$errorList  =  $validator->validate($miseajour);
     
            $form  =  $this->createForm(new MiseAJourType, $miseajour);
     
            $request = $this->get('request');
            if ($request->getMethod() == 'POST') {
                $form->bind($request);
     
                if ($form->isValid()) {
                    $em = $this->getDoctrine()->getManager();
                    $em->persist($miseajour);
                    $em->flush();
     
                    return  $this->redirect($this->generateUrl('pagetest'));
                }
            }
     
            return  $this->render('BaquarasTestBundle:Default:ajoutermiseajour.html.twig', array('form' => $form->createView(),'application' => $application));
        }
     
    }
    Mon Twig:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    <li>
                        <h2> <a id="Maj_accordion"> Mise A Jour </a> </h2>
     
                            {% block javascripts22 %}
                                <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
                                <script>
                                    $(document).ready(function(){
                                        $("#maj_accordion").click(function(){
                                            $("#maj").toggle();
                                        });
                                });
                                </script>
                            {% endblock %}
     
                        <div class="content" id="maj">
                        <table>
                          <tr>   
                            <td>
     
                            <a href="{{path('ajoutermiseajour', {'id' : application.id }) }}"> Ajouter Mise à jour </a>
     
                           </td>
     
                        </tr>
                        </table>
                    </li>

    Merci d'avance pour votre aide!!

  2. #2
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Septembre 2009
    Messages
    875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Septembre 2009
    Messages : 875
    Points : 1 313
    Points
    1 313
    Par défaut
    utilise la balise [ CODE ] (sans espace) et supprime tes commentaires de code non utilisé c'est pas lisible actuellement.

    Pour le lien entre tes deux entités:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $miseajour = new MiseAJour();
    $miseajour ->setApplication($application);

Discussions similaires

  1. Réponses: 0
    Dernier message: 17/04/2014, 11h24
  2. [1.x] formulaire de mise à jour dans une dialog
    Par phpestpuissant dans le forum Symfony
    Réponses: 2
    Dernier message: 12/10/2012, 19h59
  3. Réponses: 1
    Dernier message: 17/06/2010, 13h00
  4. Réponses: 1
    Dernier message: 09/10/2009, 09h45
  5. Conseil-Mise à jour d'une application
    Par thesmall dans le forum Langage
    Réponses: 3
    Dernier message: 13/02/2007, 10h02

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo