Расширения Doctrine 2 Gedmo не работают с ошибкой: «не существует или не может быть загружен автоматически»

1

У нас возникают проблемы с подключением плагинов Gedmo к нашей установке ZF 2 Doctrine 2

Мы получаем эту ошибку от генерации объектов:

[Semantical Error] The annotation "@Gedmo\Mapping\Annotation\Timestampable" in property Wallet\Entity\Entity::$created does not exist, or could not be auto-loaded.

Наш объект выглядит следующим образом:

...
use Gedmo\Mapping\Annotation as Gedmo;
...

/**
* @var datetime $created
*
* @Gedmo\Timestampable(on="create")
* @ORM\Column(type="datetime")
*/
public $created;
...

Мы также попытались:

/**
* @var datetime $created
*
* @\Gedmo\Mapping\Annotation\Timestampable(on="create")
* @ORM\Column(type="datetime")
*/
public $created;

А также

/**
* @var datetime $created
*
* @Gedmo\Mapping\Annotation\Timestampable(on="create")
* @ORM\Column(type="datetime")
*/
public $created;

Мы проверили, что путь верен и что php-класс существует на этом пути.

Конфигурация нашего модуля выглядит так:

'doctrine' => array(
        'eventmanager' => array(
            'orm_default' => array(
                'subscribers' => array(
                    'Gedmo\Tree\TreeListener',
                    'Gedmo\Timestampable\TimestampableListener',
                    'Gedmo\Sluggable\SluggableListener',
                    'Gedmo\Loggable\LoggableListener',
                    'Gedmo\Sortable\SortableListener',
                ),
            ),
        ),

Конфигурация нашего композитора выглядит так:

...
"require": {
...
            "gedmo/doctrine-extensions": "2.4.*",
…

Мы также попытались:

...
"require": {
...
            "gedmo/doctrine-extensions": "2.3.*",
…

Ни одна из статей, которые я нашел по этому вопросу, пока не помогла.

Любые предложения, которые вы можете предложить, будут очень благодарны.

Всего наилучшего.

Будет

  • 0
    Обновление здесь - мы обнаружили, что плагин работает, когда мы получаем доступ к веб-сайту через стек Zend Framework, но он не работает во время генерации сущностей из Doctrine-консоли. Любой совет очень уместен
  • 0
    Модуль ZF2 Doctrine помещает скрипт в vendor/bin/doctrine-module который вы должны использовать для доступа к консоли. т. е. из маршрута вашего приложения в командной строке попробуйте ./vendor/bin/doctrine-module orm:info
Показать ещё 1 комментарий
Теги:
doctrine2
zend-framework2

1 ответ

0

Наш разработчик установил его в выходные, когда мы поняли, что нам не хватает загрузки у слушателей в console.php.

Он добавил их так: $ evm = new\Doctrine\Common\EventManager(); $evm-> addEventSubscriber (новый\Gedmo\Timestampable\TimestampableListener());

Он нашел здесь свой пример кода:

https://gist.github.com/l3pp4rd/964075

Ещё вопросы

Сообщество Overcoder
Наверх
Меню