J'ai des problèmes avec la superclasse mappée de la doctrine. Lorsque j'exécute la commande symfony:La cartographie de la doctrine ne fonctionne pas correctement
php app/console doctrine:mapping:info
Je reçois ce message d'exception:
[Doctrine\Common\Persistence\Mapping\MappingException] Class 'DBiagi\EitaBundle\Entity\BaseFoo' does not exist
La partie étrange est que la classe BaseFoo est pas dans le dossier de l'entité, et cette classe est une superclasse cartographié . Voici mes fichiers:
<?php
# src/DBiagi/EitaBundle/Model/BaseFoo.php
namespace DBiagi\EitaBundle\Model;
/**
* Description of BaseFoo
*
*/
abstract class BaseFoo implements BaseFooInterface{
private $id;
private $name;
public function getId(){
return $this->id;
}
public function getName(){
return $this->name;
}
}
La définition de la cartographie:
# src/DBiagi/EitaBundle/Resources/doctrine/BaseFoo.orm.yml
DBiagi\EitaBundle\Model\BaseFoo:
type: mappedSuperclass
fields:
id:
id:
type: integer
id: true
generator:
strategy: AUTO
name:
type: string
length: 255
Notez que la classe DBiagi \ EitaBundle \ Entité \ BaseFoo n'existe pas, en fait, et la vie classe BaseFoo dans le dossier du modèle , alors la question est: Pourquoi la doctrine essaie de charger cette classe? Je ne peux pas faire correspondre mes entités à cause de cette exception. Une aide sera très appréciée. Merci.
Merci de me pointer dans la bonne direction. Dans la section de doctrine de la [documentation de symfony] (http://symfony.com/doc/current/reference/configuration/doctrine.html) il y a un tutoriel montrant comment changer le dossier d'entité par défaut. Thats a résolu mon problème. Merci. – dbiagi