Bonjour,

Voici mon entité catégorie :
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
/**
 * @var integer $id
 *
 * @ORM\Column(name="id", type="integer")
 * @ORM\Id
 * @ORM\GeneratedValue(strategy="AUTO")
 */
 private $id;
/**
 * @var string $titre
 *
 * @ORM\Column(name="titre", type="string", length=255)
 */
 private $titre;
/**
 * @ORM\ManyToOne(targetEntity="App\AppBundle\Entity\Media", cascade={"persist"})
 * @ORM\JoinColumn(name="picto_id", referencedColumnName="id")
 */
 private $picto;
Mon formulaire d'édition de catégorie est comme celui-ci :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
public function buildForm(FormBuilder $builder, array $options)
{
    $builder
        ->add('titre')
        ->add('picto', new MediaType(), array('required' => false))
    ;
}
Mon formulaire média est :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
public function buildForm(FormBuilder $builder, array $options)
{
    $builder
        ->add('file', 'file', array('required' => true))
    ;
}
Mon problème est que lorsque je valide mon formulaire sans renseigner de picto, j'ai l'erreur suivante :
SQLSTATE[23000]: Integrity constraint violation: 1048 Column 'fichier' cannot be null

C'est à dire que mon formulaire de catégorie traite quand même mon formulaire de média.

N'y a t'il donc pas moyen de rendre ce formulaire de média optionnel et qu'il ne soit pas traiter lorsque celui-ci n'est pas renseigner ?

Merci de votre aide