Bonjour,

J'ai un formulaire qui contient des champs de type entity.

Mon problème est que ce formulaire me renvoye les entités du type suivant:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
object(Proxies\__CG__\MonProjet\MainBundle\Entity\Qualite)[528]
  public '__isInitialized__' => boolean true
  private 'id' (MonProjet\MainBundle\Entity\Qualite) => int 1
  private 'nom' (MonProjet\MainBundle\Entity\Qualite) => string '280p' (length=5)
  private 'logo' (MonProjet\MainBundle\Entity\Qualite) => string '' (length=0)
  private 'objFile' (MonProjet\MainBundle\Entity\Qualite) => null
  private 'type' (MonProjet\MainBundle\Entity\Qualite) => string '' (length=0)
  private 'ordre' (MonProjet\MainBundle\Entity\Qualite) => int 1
  private 'date_ajout' (MonProjet\MainBundle\Entity\Qualite) => 
    object(DateTime)[979]
      public 'date' => string '-0001-11-30 00:00:00' (length=20)
      public 'timezone_type' => int 3
      public 'timezone' => string 'Europe/Berlin' (length=13)
  private 'filenameForRemove' (MonProjet\MainBundle\Entity\Qualite) => null

Je ne peux pas stocker ce type d'objet en session avec un :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
$this->get('session')->set('infos', $qualite);
Sous peine de cette errreur:
ErrorException: Notice: serialize() [function.serialize]: "id" returned as member variable from __sleep() but does not exist in /var/www/monprojet/vendor/symfony/symfony/src/Symfony/Component/HttpKernel/DataCollector/DataCollector.php line 27
Sauriez vous d'ou vient ce "Proxies\__CG__\" pour le type d'objet?
Ou comment le retirer de l'objet?
Ou comment récupérer un objet ENTIY à partir d'un formulaire?

je souhaiterais avoir l'entité de la forme suivante:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
object(MonProjet\MainBundle\Entity\Qualite)[1110]
 private 'id' (MonProjet\MainBundle\Entity\Qualite) => int 1
  private 'nom' (MonProjet\MainBundle\Entity\Qualite) => string '280p' (length=5)
  private 'logo' (MonProjet\MainBundle\Entity\Qualite) => string '' (length=0)
  private 'objFile' (MonProjet\MainBundle\Entity\Qualite) => null
  private 'type' (MonProjet\MainBundle\Entity\Qualite) => string '' (length=0)
  private 'ordre' (MonProjet\MainBundle\Entity\Qualite) => int 1
  private 'date_ajout' (MonProjet\MainBundle\Entity\Qualite) => 
    object(DateTime)[979]
      public 'date' => string '-0001-11-30 00:00:00' (length=20)
      public 'timezone_type' => int 3
      public 'timezone' => string 'Europe/Berlin' (length=13)
  private 'filenameForRemove' (MonProjet\MainBundle\Entity\Qualite) => null
Voici le champ de mon entité :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
/**
	 * @ORM\ManyToOne(targetEntity="MonProjet\MainBundle\Entity\Qualite")
	 * @ORM\JoinColumn(nullable=true)
	 * @Assert\Type(type="MonProjet\MainBundle\Entity\Qualite")
	 */
	protected $qualite;
Voici l'entité définies dans mon formulaire:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
->add('qualite', 'entity', array(
    				'multiple'  => false,
    				'expanded' => false,
    				'class' => 'MonProjetMainBundle:Qualite',
    				'query_builder' => function(EntityRepository $er) {
    					return $er->createQueryBuilder('u')
    					->orderBy('u.ordre', 'ASC');
    				},
    				'property' => 'nom',
    				'empty_value' => 'Veuillez choisir',
    				'required' => false
    		))