Bonjour

J'aimerais surcharger la classe User d'un bundle qui surcharge Fosuser et donc qui surcharge déjà cette classe.

Pour résumer je fait ça:
(FosUser/Model/User <- KunstmaanAdminBundle/Entity/BaseUser <- KunstmaanAdminBundle/Entity/User <- MonBundle/EntityUser)


Au niveau "Bundle" KunstmaanAdminBundle hérite de FosUser et MonBundle hérite de KunstmaanAdminBundle.
Bien sûre FosUser et KunstmaanBundle sont dans mon vendor et donc je ne peux pas les modifier directement.

le but est juste d'ajouter deux champs dans la table user (nommé kuma_user par Kunstmaan).

Le problème:

Ma class
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
 
namespace Lle\AdminBundle\Entity;
use Kunstmaan\AdminBundle\Entity\User as BaseUser;
use Doctrine\ORM\Mapping as ORM;
 
 
/**
 * @ORM\Entity(repositoryClass="Lle\AdminBundle\Repository\UserRepository")
 * @ORM\Table(name="kuma_users")
 */
class User extends BaseUser{ ...mes champs.... }
{
La classe de Kunstmaan (Kunstmaan\AdminBundle\Entity\User)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
 
<?php
 
namespace Kunstmaan\AdminBundle\Entity;
 
use Doctrine\ORM\Mapping as ORM;
 
/**
 * User entity
 *
 * @ORM\Entity(repositoryClass="Kunstmaan\AdminBundle\Repository\UserRepository")
 * @ORM\Table(name="kuma_users")
 */
class User extends BaseUser{ ...Les champs Kunstmaan... }
Ma config:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
 
fos_user:
    user_class: Lle\AdminBundle\Entity\User
Quand je fait
Code : Sélectionner tout - Visualiser dans une fenêtre à part
php app/console doctrine:schema:update --dump-sql
j'ai le message d'erreur:
Doctrine\DBAL\Schema\SchemaException]
The table with name 'aurm.kuma_users' already exists.
Alors oui la table kuma_users existe mais je veux juste lui ajouté deux champs pas en créer une autre.

Je suis sur ce problème depuis un moment donc finalement après beaucoup de recherche je viens sur ce forum dans l'espoire que l'un de vous trouve LA solution.

En tous les cas Merci d'avance.