/ / El servicio "fos_user.mailer" depende de un servicio que no existe "plantilla" - symfony, fosuserbundle

El servicio "fos_user.mailer" tiene una dependencia en un servicio "plantilla" inexistente - symfony, fosuserbundle

Entonces, el error anterior comenzó a ocurrir repentinamente, después de haber estado utilizando FOSUserBundle para varios proyectos de Symfony.

He intentado incluir el servicio de plantillas (dos veces ahora) y parece que está bien instalado. Aquí está mi lista de requisitos en mi composer.json:

"require": {
"php": ">=5.5.9",
"doctrine/doctrine-bundle": "^1.6",
"doctrine/orm": "^2.5",
"friendsofsymfony/user-bundle": "^2.0",
"incenteev/composer-parameter-handler": "^2.0",
"sensio/distribution-bundle": "^5.0.19",
"sensio/framework-extra-bundle": "^5.0.0",
"symfony/monolog-bundle": "^3.1.0",
"symfony/polyfill-apcu": "^1.0",
"symfony/swiftmailer-bundle": "^2.6.4",
"symfony/symfony": "3.4.*",
"symfony/templating": "^3.4",
"twig/twig": "^1.0||^2.0"
},

He configurado el config.yml, seguridad.yml y los archivos routing.yml como de costumbre, e incluyó el paquete en el archivo AppKernel.php. También he creado la entidad User.php pero cada vez que intento borrar la memoria caché o actualizar la base de datos, aparece este error.

El servicio "fos_user.mailer" tiene una dependencia de una inexistente servicio de "plantillas"

Y después de mucho buscar no puedo ver dóndearregla este problema Cualquier ayuda con esto es muy apreciada ya que es algo que nunca sucedió antes y siempre he usado FOSUserBundle para mis necesidades de seguridad.

Respuestas

50 para la respuesta № 1

Acabo de experimentar el mismo problema. Lo curioso es que creé un proyecto Symfony 3.3 justo antes de crear un proyecto Symfony 3.4 y el proyecto Symfony 3.3 no tenía este problema. Por lo tanto, deben haber eliminado el componente de plantilla para la versión 3.4.

Para resolver su problema, tendrá que instalar el componente de plantillas usando el compositor:

composer require symfony/templating

Luego, agregue la siguiente configuración debajo de framework clave en tu config.yml:

templating:
engines: ["twig"]

57 para la respuesta № 2

En Symfony 3.4 y FosUserBundle 2.0, agrega un servicio de correo en el fos_user config:

fos_user:
db_driver: orm # other valid values are "mongodb" and "couchdb"
firewall_name: main
user_class: AppBundleEntityUser
service:                               # this lines
mailer: fos_user.mailer.twig_swift # this lines
from_email:
address: "%mailer_user%"
sender_name: "%mailer_user%