Я недавно обновился до Symfony 2.7 и столкнулся с этой проблемой. Это дает мне эту ошибку обесценивания.
Symfony\Component\DependencyInjection\Definition::setFactoryMethod(getRepository) is deprecated since version 2.6 and will be removed in 3.0. Use Definition::setFactory() instead
Symfony\Component\DependencyInjection\Definition::setFactoryService(doctrine.orm.entity_manager) is deprecated since version 2.6 and will be removed in 3.0. Use Definition::setFactory() instead
Похоже, виновником этой конфигурации.
ac_queue.failed.job.repository:
class: Acme\Bundle\QueueBundle\Repository\FailedJob
factory_service: doctrine.orm.entity_manager
factory_method: getRepository
arguments: ['AcmeQueueBundle:FailedJob']
public: false
Как правильно сделать это сейчас в Symfony 2.7 сейчас?
Вы должны преобразовать factory_service
а также factory_method
к factory
параметр:
ac_queue.failed.job.repository:
class: Acme\Bundle\QueueBundle\Repository\FailedJob
factory: [@doctrine.orm.entity_manager, getRepository]
arguments: ['AcmeQueueBundle:FailedJob']
public: false
KNPUniversity рассмотрел эту ошибку обесценивания среди других в этой статье:
http://knpuniversity.com/blog/upgrading-symfony-2.7#you-need-to-upgrade-sensio-distribution-bundle