Непризнанное автоматическое сопоставление доктрины Symfony
Я добавил SonataUserBundle, и он выдает ошибку
Конфигурация.yml
doctrine:
orm:
auto_generate_proxy_classes: "%kernel.debug%"
naming_strategy: doctrine.orm.naming_strategy.underscore
auto_mapping: true
entity_managers:
default:
mappings:
ApplicationSonataUserBundle: ~
SonataUserBundle: ~
Ошибка
Нераспознанные параметры "naming_strategy, auto_mapping, dql" в разделе "доктрина.орм"
2 answers
Вы смешиваете сокращенную и полную конфигурацию.
Если вы просто хотите использовать диспетчер сущностей по умолчанию, вы можете поместить все под ключ orm
(сокращенная конфигурация). Это будет переназначено так, чтобы оно находилось под doctrine.orm.entity_managers.default
расширением пакета.
Однако, если вы хотите изменить имя менеджера сущностей или использовать кратные, вам потребуется использовать полную конфигурацию с указанием каждого менеджера сущностей.
Укороченный Конфигурация
doctrine:
orm:
auto_generate_proxy_classes: "%kernel.debug%"
naming_strategy: doctrine.orm.naming_strategy.underscore
auto_mapping: true
mappings:
ApplicationSonataUserBundle: ~
SonataUserBundle: ~
Полная Конфигурация
doctrine:
orm:
auto_generate_proxy_classes: "%kernel.debug%"
entity_managers:
default:
naming_strategy: doctrine.orm.naming_strategy.underscore
auto_mapping: true
mappings:
ApplicationSonataUserBundle: ~
SonataUserBundle: ~
Считаете ли вы необходимым настраивать сопоставления вручную, если для параметра auto_mapping установлено значение true?
Функция auto_mapping доктрины загружает конфигурацию аннотаций из сущности/каталога каждого пакета и ищет другие форматы (например, YAML, XML) в каталоге Ресурсов/конфигурации/доктрины.