Я пытаюсь установить "gedmo" behaviourial extensions (version 2.1.0-DEV) в Doctrine2 (версия 2.1.3).Как установить gedmo-расширения в Doctrine2?
Без расширений все работает нормально. Однако, когда я добавляю annotationdriver для чтения ошибок gedmo-annotations, таких как «Uncaught exception 'Doctrine\ORM\Mapping\MappingException' with message 'Class User2 is not a valid entity or mapped super class
», выдается. Это де Пользователь2-объект:
<?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 не используется я подозреваю, что это что-то делать с тем, как annotationdrivers настроены. В моей самозагрузке-файле драйвер аннотации добавлен (я только собираюсь использовать дерево-расширение):
$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?