Bonsoir j'ai j'ai deux entités Fichier_Recu (1,n) <==> (1,1) Etab_FR créer ,et j ai crée un formulaire qui contient des champs qui s'ajoutent automatiquement mais lorsque je clique sur le bouton charger les données concernant l entité Fichier_Recu sont bien ajouté a la BDD mais les autres concernant Etab_FR ne le sont pas. voici mon code :

Fichier_recu.php
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
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
<?php
 
namespace CUDS\PlatformBundle\Entity;
 
use Doctrine\ORM\Mapping as ORM;
use Symfony\Component\Validator\Constraints as Assert;
 
 
/**
 * Fichier_Recu
 *
 * @ORM\Table()
 * @ORM\Entity(repositoryClass="CUDS\PlatformBundle\Entity\Fichier_RecuRepository")
 * @ORM\HasLifecycleCallbacks
 */
class Fichier_Recu
{
    /**
     * @var integer
     *
     * @ORM\Column(name="id", type="integer")
     * @ORM\Id
     * @ORM\GeneratedValue(strategy="AUTO")
     */
    private $id;
 
 
    /**
     * @var \DateTime
     *
     * @ORM\Column(name="date_recep", type="date")
     */
    private $dateRecep;
 
    /**
     * @var string
     *
     * @ORM\Column(name="nom_expediteur", type="string", length=255)
     */
    private $nomExpediteur;
 
    /**
     * @var string
     *
     * @ORM\Column(name="email_expediteur", type="string", length=255)
     */
    private $emailExpediteur;
 
    /**
     * @ORM\Column(name="path", type="string", length=255, unique=true)
    */
    private $path;
 
    /**
     * @ORM\Column(name="etat", type="boolean", nullable=true)
    */
   private $etat = 0;
 
    /**
     * @ORM\ManyToOne(targetEntity="CUDS\PlatformBundle\Entity\Universite")
     * @ORM\JoinColumn(name="universite_id", referencedColumnName="id")
    */
   private $universite;
 
   /**
     * @ORM\ManyToOne(targetEntity="CUDS\UserBundle\Entity\User")
    */
   private $user;
 
   /**
     * @ORM\ManyToOne(targetEntity="CUDS\PlatformBundle\Entity\Traitement")
     * @ORM\JoinColumn(name="trait_id", referencedColumnName="id")
    */
   private $traitement;
 
   /**
    * @Assert\File(maxSize="6000000")
   */
    private $file;
 
    /**
     * @ORM\OneToMany(targetEntity="CUDS\PlatformBundle\Entity\Etab_FR", mappedBy="fichier_recu")
    */
  private $etab_fr;
 
 
}

Etab_FR.php

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
35
36
37
38
39
40
41
42
43
44
<?php
 
namespace CUDS\PlatformBundle\Entity;
 
use Doctrine\ORM\Mapping as ORM;
 
/**
 * Etab_FR
 *
 * @ORM\Table()
 * @ORM\Entity(repositoryClass="CUDS\PlatformBundle\Entity\Etab_FRRepository")
 */
class Etab_FR
{
    /**
     * @var integer
     *
     * @ORM\Column(name="id", type="integer")
     * @ORM\Id
     * @ORM\GeneratedValue(strategy="AUTO")
     */
    private $id;
 
    /**
     * @var integer
     *
     * @ORM\Column(name="global", type="integer")
     */
    private $global;
 
    /**
     * @ORM\ManyToOne(targetEntity="CUDS\PlatformBundle\Entity\Fichier_Recu", inversedBy="etab_fr")
     * @ORM\JoinColumn(name="fichier_recu_id", referencedColumnName="id")
    */
   private $fichier_recu;
 
   /**
     * @ORM\ManyToOne(targetEntity="CUDS\ExploitationBundle\Entity\Etablissement")
     * @ORM\JoinColumn(name="etab_id", referencedColumnName="code_etab")
    */
   private $etablissement;
 
 
}
Fichier_RecuType.php

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
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
<?php
 
namespace CUDS\PlatformBundle\Form;
 
use Symfony\Component\Form\AbstractType;
use Symfony\Component\Form\FormBuilderInterface;
use Symfony\Component\OptionsResolver\OptionsResolverInterface;
 
class Fichier_RecuType extends AbstractType
{
    /**
     * @param FormBuilderInterface $builder
     * @param array $options
     */
    public function buildForm(FormBuilderInterface $builder, array $options)
    {
        $builder
            ->add('dateRecep','date', array(
            'input' => 'datetime',
            'widget' => 'single_text'))
 
            ->add('nomExpediteur', 'text')
            ->add('emailExpediteur', 'email')
            ->add('file')
 
            ->add('universite', 'entity', array(
                   'class'    => 'CUDSPlatformBundle:Universite',
                   'property' => 'univ_fr',
                   'empty_value' => '-- Choisissez une universite --',
                   'multiple' => false,
                   'expanded' => false
                  ))
            ->add('traitement', 'entity', array(
                   'class'    => 'CUDSPlatformBundle:traitement',
                   'property' => 'trait',
                   'empty_value' => '-- Choisissez un traitement --',
                   'multiple' => false,
                   'expanded' => false
                  ))
 
            ->add('user', 'entity', array(
                   'class'    => 'CUDSUserBundle:User',
                   'property' => 'username',
                   'empty_value' => '-- Choisissez un utilisateur --',
                   'multiple' => false,
                   'expanded' => false
                  ))
             ->add('etab_fr', 'collection', array(
                    'type'         => new Etab_FRType(),
                    'allow_add'    => true,
                    'allow_delete' => true
                  ))
 
            ;
    }
 
    /**
     * @param OptionsResolverInterface $resolver
     */
    public function setDefaultOptions(OptionsResolverInterface $resolver)
    {
        $resolver->setDefaults(array(
            'data_class' => 'CUDS\PlatformBundle\Entity\Fichier_Recu'
        ));
    }
 
    /**
     * @return string
     */
    public function getName()
    {
        return 'cuds_platformbundle_fichier_recu';
    }
}
Etab_FRType.php

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
35
36
37
38
39
40
41
42
43
44
45
46
47
<?php
 
namespace CUDS\PlatformBundle\Form;
 
use Symfony\Component\Form\AbstractType;
use Symfony\Component\Form\FormBuilderInterface;
use Symfony\Component\OptionsResolver\OptionsResolverInterface;
 
class Etab_FRType extends AbstractType
{
    /**
     * @param FormBuilderInterface $builder
     * @param array $options
     */
    public function buildForm(FormBuilderInterface $builder, array $options)
    {
        $builder
 
            ->add('global','text')
            ->add('etablissement','entity', array(
                   'class'    => 'CUDSExploitationBundle:Etablissement',
                   'property' => 'etab_abrv',
                   'empty_value' => '-- Fichier recu correspondant --',
                   'multiple' => false,
                   'expanded' => false
                  ))
        ;
    }
 
    /**
     * @param OptionsResolverInterface $resolver
     */
    public function setDefaultOptions(OptionsResolverInterface $resolver)
    {
        $resolver->setDefaults(array(
            'data_class' => 'CUDS\PlatformBundle\Entity\Etab_FR'
        ));
    }
 
    /**
     * @return string
     */
    public function getName()
    {
        return 'cuds_platformbundle_etab_fr';
    }
}
voici le resultat:

Nom : Capture.JPG
Affichages : 118
Taille : 84,3 Ko