Ainsi, l'erreur ci-dessus a soudainement commencé à se produire, après que j'utilise FOSUserBundle pour plusieurs projets Symfony.
J'ai essayé d'inclure le service de gabarit (deux fois maintenant) et il semble qu'il soit bien installé. Voici ma liste d'exigences dans mon 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"
},
J'ai configuré les fichiers config.yml, security.yml et routing.yml comme d'habitude et inclus l'ensemble dans le fichier AppKernel.php. J'ai également créé l'entité User.php, mais chaque fois que j'essaie d'effacer le cache ou de mettre à jour la base de données, j'obtiens cette erreur.
Le service "fos_user.mailer" a une dépendance sur un service non existant "templating"
Et après de longues recherches, je ne vois pas où régler ce problème. Toute aide à cet égard est très appréciée, car elle n’est jamais arrivée auparavant et j’ai toujours utilisé FOSUserBundle pour mes besoins de sécurité.
Je viens de rencontrer exactement le même problème. La chose amusante est que j'ai créé un projet Symfony 3.3 juste avant de créer un projet Symfony 3.4 et que le projet Symfony 3.3 n'avait pas ce problème. Ils doivent donc avoir supprimé le composant de création de modèles pour la version 3.4.
Pour résoudre votre problème, vous devrez installer le composant de gabarit à l’aide de composer:
composer require symfony/templating
Ajoutez ensuite la configuration suivante sous la clé framework
dans votre config.yml:
templating:
engines: ['twig']
Mise à jour: J'ai récemment dû démarrer un nouveau projet Symfony 3.4 avec FOSUserBundle et découvert que je n'avais qu'à ajouter la configuration ci-dessus à mon fichier config.yml ( comme cela a été mentionné dans n commentaire ci-dessous ).
Dans Symfony 3.4 et FosUserBundle 2.0, ajoutez un mailing de service dans le fichier fos_user
config:
fos_user:
db_driver: orm # other valid values are 'mongodb' and 'couchdb'
firewall_name: main
user_class: AppBundle\Entity\User
service: # this lines
mailer: fos_user.mailer.twig_Swift # this lines
from_email:
address: "%mailer_user%"
sender_name: "%mailer_user%