Une question de débutant :
Je crée régulièrement des formulaires "custom" depuis, un controlleur, j'y insere des formulaires simple ou des "Fieldsets" à partir du builder avec la méthod add.
je récupère ensuite mon abjet mappé dans le controlleur avec $form->getData().

Je n'arrive cependant pas à "atteindre" l'objet principal de mon formulaire quand je suis DANS le formulaires.

Exemple :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
 
// Création dans le contrôleur 
$form = $this->createForm(new RessourceForm(), $ressource,array());
Voici le code (simmplifié ) du formulaire

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
 
class RessourceForm extends AbstractType
{
 
    public function __construct(Router $router, $entityId, $helps)
    {
			//...
    }
 
	public function buildForm(FormBuilder $builder, array $options)
    {
        parent::buildForm($builder, $options);
 
		//comment acceder ici à l'instance ( et ses propriétés ) de l'objet passé lors de la création du formulaire ( attendu class Ressource ) 
		// $this->detData();  -> erreur method non existante 
	    //ressource =  $builder->getData();  -> apparemment ok
 
		$builder->add('Description', new RessourceFormDescriptionFieldset());
		 //...
 
    }
 
    public function getDefaultOptions(array $options)
    {
        return array(
            'data_class' => 'CS\PomModelBundle\Entity\Scenario\Ressource',
            'label' => 'Ressource'
        );
    }
}
et celui du "Fieldset"

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
class RessourceFormInformationFieldset extends FormType
{
	// ...
    public function __construct(Router $router, $entityId, $helps)
    {
	// ...
    }
 
	public function buildForm(FormBuilder $builder, array $options)
    {
        parent::buildForm($builder, $options);
 
		//comment acceder ici à l'instance ( et ses propriétés ) de l'objet passé lors de la créattion du formulaire ( attendu class Ressource ) 
		// object qui possede donc une propriété cdressource
 
	   $builder->add('cdressource', 'text', array(
        	'required' => true, 
        	'label' => 'Code',
        ));
 
        //...
    }
 
    public function getDefaultOptions(array $options)
    {
        return array_merge(parent::getDefaultOptions($options),
            array('data_class' => 'CS\PomModelBundle\Entity\Scenario\Ressource'),
            $options            
            );  
    }
 
}
Toute remarque sur mon incompréhension du fontionnement des formulaires,
ou toute idée autre est bienvenue.

Merci d'avance