Есть ли способ изменить конфигурацию сопоставления сущностей для доктрины вне файла конфигурации?

В моем стандартном приложении Symfony2 у меня есть куча пакетов с некоторыми сущностями. Некоторые из эти сущности находятся не в стандартной папке, которую обнаруживает автоматическое сопоставление доктрины (например, / src / Acme / DemoBundle / Entities ), а в другом месте.

Я мог бы легко использовать конфигурацию . yml , чтобы указать доктрине использовать другое местоположение, например:

doctrine:
    orm:
        auto_mapping: false
        mappings:
           AcmeDemoBundle:
              type: annotation
              prefix: Acme\DemoBundle\Entities\
              dir: %kernel.cache_dir%\Acme\DemoBundle\Entities

Это работает.Но скажем, у меня есть 10 пакетов с другим отображением, config.yml очень быстро раздувается. другим способом, например, с помощью CompilerPass или DependencyInjection, поэтому мне не нужно добавлять все сущности в мой config.yml ? Я уже просматривал DoctrineBundle , но мне не повезло пока.

9
задан acme 20 January 2012 в 11:23
поделиться