Я пытаюсь установить поведенческие расширения "gedmo" (версия 2.1.0-DEV) в Doctrine2 (версия 2.1.3).
Без расширений все работает нормально,Однако, когда я добавляю драйвер аннотации для чтения @ gedmo-annotations, появляются такие ошибки, как "Uncaught exception 'Doctrine\ORM\Mapping\MappingException' with message 'Class User2 is not a valid entity or mapped super class
".Это de User2-entity:
<?php
use \Doctrine\ORM\Mapping as ORM;
/** @ORM\Entity */
class User2 {
/**
* @ORM\Column(name="id", type="integer")
* @ORM\Id
* @ORM\GeneratedValue
*/
private $id;
/** @ORM\Column(length=255) */
private $username;
}
Поскольку эти ошибки возникают даже в тех объектах, где @gemdo не используется, я подозреваю, что это как-то связано с настройкой драйверов аннотаций.В моем загрузочном файле добавлен драйвер аннотации (я собираюсь использовать расширение дерева):
$reader = new \Doctrine\Common\Annotations\AnnotationReader();
$annotationDriver = new \Doctrine\ORM\Mapping\Driver\AnnotationDriver($reader);
$chain = new \Doctrine\ORM\Mapping\Driver\DriverChain;
$chain->addDriver($annotationDriver, 'Gedmo\Tree\Entity');
$config->setMetadataDriverImpl($chain);
Несколько вопросов:
- Должен ли я добавитьдрайвер для аннотации ORM?
- Что-то не так с классом User2?
- Как получить более конкретную ошибку пользователя, позволяющую мне найти точную причину проблемы?
Вкратце: как заставить работать аннотации @orm и @gedmo?