Класс LogEntry не найден

В моем приложении, разработанном с использованием Symfony 4.2 и API Platform,
Я устанавливаю пакет DoctrineExtensions для использования расширения Loggable,
и я следую инструкциям в документации Symfony и расширении Loggable.

Когда я использую только один EntityManager, все работает.
Но я хочу переместить таблицу сущностей LogEntry в другую базу данных.
Поэтому я создал второй EntityManager, как описано в документе Symfony.

После этого я изменяю в своем приложении сущность с аннотацией @Gedmo\Loggable
и я получаю эту ошибку:
The class 'Gedmo\Loggable\Entity\LogEntry' was not found in the chain configured namespaces 'App\Entity',

мой config/packages/doctrine.yaml файл:

parameters:
    env(DATABASE_URL): ''

doctrine:
    dbal:
        connections:
            default:
                driver: 'pdo_mysql'
                server_version: '%env(resolve:SERVER_VERSION)%'
                charset: utf8mb4
                default_table_options:
                    charset: utf8mb4
                    collate: utf8mb4_unicode_ci
                url: '%env(resolve:DATABASE_URL)%'
            log:
                driver: 'pdo_mysql'
                server_version: '%env(resolve:SERVER_VERSION)%'
                charset: utf8mb4
                default_table_options:
                    charset: utf8mb4
                    collate: utf8mb4_unicode_ci
                url: '%env(resolve:LOG_DATABASE_URL)%'
    orm:
        auto_generate_proxy_classes: '%kernel.debug%'
        entity_managers:
            default:
                naming_strategy: doctrine.orm.naming_strategy.underscore
                mappings:
                    App:
                        is_bundle: false
                        type: annotation
                        dir: '%kernel.project_dir%/src/Entity'
                        prefix: 'App\Entity'
            log:
                naming_strategy: doctrine.orm.naming_strategy.underscore
                connection: log
                mappings:
                    gedmo_loggable:
                        is_bundle: false
                        type: annotation
                        dir: '%kernel.project_dir%/vendor/gedmo/doctrine-extensions/lib/Gedmo/Loggable/Entity'
                        prefix: 'Gedmo\Loggable\Entity'
                        alias: GedmoLoggable

Пример сущности, которую я хочу посмотреть:

<?php
namespace App\Entity;

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

/**
 * @ApiResource
 * @Gedmo\Loggable
 * @ORM\Table(name="patients")
 */
class Patient
{
    /**
     * @ORM\Id
     * @ORM\Column(type="guid", unique=true)
     * @ORM\GeneratedValue(strategy="UUID")
     * @Assert\Uuid
     */
    private $id;

    /**
     * @ORM\Column(length=50)
     * @Assert\NotBlank()
     * @Assert\Length(max=50)
     * @Gedmo\Versioned
     */
    public $familyName;

    /**
     * @ORM\Column(length=50)
     * @Assert\NotBlank()
     * @Assert\Length(max=50)
     * @Gedmo\Versioned
     */
    public $firstName;

    ...
}

Я пытался добавить и удалить некоторые свойства в doctrine.yaml но я всегда получаю ту же ошибку...

Спасибо за ваше время.

0 ответов

Другие вопросы по тегам