Bonjour à tous

J'aimerais créer une classe parente Utilisateur, qui aurait comme classes filles "Enseignant" et "Etudiant". Voici ma classe Utilisateur
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
 <?php
 
namespace App\Entity;
 
use App\Repository\UtilisateurRepository;
use Doctrine\ORM\Mapping as ORM;
use App\Entity\Enseignant;
use App\Entity\Etudiant;
 
use Symfony\Component\Validator\Constraints as Assert;
 
#[ORM\Entity(repositoryClass: UtilisateurRepository::class)]
#[InheritanceType('JOINED')]
#[DiscriminatorColumn(name: 'discr', type: 'string')]
#[DiscriminatorMap([
    'enseignant' => Enseignant::class,
    'etudiant' => Etudiant::class
])]
 
class Utilisateur 
{ .... }
J'aimerais donc avoir une table Utilisateur qui possèderait une colonne discriminante. Voici mes 2 classes filles :

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
<?php
 
namespace App\Entity;
 
use App\Repository\EnseignantRepository;
use App\Entity\Utilisateur;
use Doctrine\Common\Collections\ArrayCollection;
use Doctrine\Common\Collections\Collection;
use Doctrine\ORM\Mapping as ORM;
 
#[ORM\Entity(repositoryClass: EnseignantRepository::class)]
 
class Enseignant extends Utilisateur
 
 
{... }
et
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
 
<?php
 
namespace App\Entity;
 
use App\Repository\EtudiantRepository;
use App\Entity\Utilisateur;
use Doctrine\Common\Collections\ArrayCollection;
use Doctrine\Common\Collections\Collection;
use Doctrine\ORM\Mapping as ORM;
 
#[ORM\Entity(repositoryClass: EtudiantRepository::class)]
 
class Etudiant extends Utilisateur
 
 
{... ]
Seulement voila, quand je fais ma migration, tout mon
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
#[InheritanceType('JOINED')]
#[DiscriminatorColumn(name: 'discr', type: 'string')]
#[DiscriminatorMap([
    'enseignant' => Enseignant::class,
    'etudiant' => Etudiant::class
])]
ne semble pas lu. La colonne discriminante ne se cree pas, et aucune clé étrangère ne se crée. Par contre, mes filles ont bien les propriétés de la parente, mais du coup quand je cree un etudiant ca ne me cree pas l'utilisateur.

Donc pour l'instant la table utilisateur ne sert a rien. J'ai tout cherché je ne comprends pas d'ou le problème peut venir.

Merci pour votre aide