/ / Der Dienst "fos_user.mailer" hängt von einem nicht vorhandenen Dienst "Vorlagen" ab - symfony, fosuserbundle

Der Dienst "fos_user.mailer" hat eine Abhängigkeit von einem nicht existierenden Dienst "templating" - symfony, fosuserbundle

Der obige Fehler ist plötzlich passiert, nachdem ich FOSUserBundle für mehrere Symfony-Projekte verwendet habe.

Ich habe versucht, den Templating-Service einzubinden (jetzt zweimal), und es scheint, als wäre er gut installiert. Hier ist meine Liste von Requires in meinem 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"
},

Ich habe die config.yml-Sicherheit eingerichtet.yml und die routing.yml-Dateien wie üblich und enthalten das Bundle in der AppKernel.php-Datei. Ich habe auch die User.php-Entität erstellt, aber jedes Mal, wenn ich versuche, den Cache zu löschen oder die Datenbank zu aktualisieren, erhalte ich diesen Fehler.

Der Dienst "fos_user.mailer" hat eine Abhängigkeit von einem nicht vorhandenen Dienst "Templating"

Und nach langem Suchen kann ich nicht sehen, wohinBeheben Sie dieses Problem. Jede Hilfe wird sehr geschätzt, da es etwas ist, was noch nie zuvor passiert ist, und ich habe FOSUserBundle immer für meine Sicherheitsanforderungen verwendet.

Antworten:

50 für die Antwort № 1

Ich habe gerade das gleiche Problem erfahren. Die lustige Sache ist, dass ich ein Symfony 3.3-Projekt erstellt habe, kurz bevor ein Symfony 3.4-Projekt erstellt wurde, und das Symfony 3.3-Projekt hatte dieses Problem nicht. Daher müssen sie die Template-Komponente für die 3.4-Version entfernt haben.

Um Ihr Problem zu lösen, müssen Sie die Vorlagekomponente mit Composer installieren:

composer require symfony/templating

Fügen Sie dann die folgende Konfiguration unter hinzu framework Geben Sie Ihre config.yml ein:

templating:
engines: ["twig"]

57 für die Antwort № 2

Fügen Sie in Symfony 3.4 und FosUserBundle 2.0 einen Service-Mailer hinzu fos_user Konfiguration:

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%