In meinem Benachrichtigungsdienst muss ich die Benachrichtigungen per E-Mail senden, aber im Entwickler möchte ich alle E-Mails an eine bestimmte Adresse senden:
%Vor% Aber das $this->container->get('kernel')->getEnvironment()
funktioniert nur in einem Controller.
Ich denke, ich muss ein Argument in meinem Service-Konstruktor hinzufügen:
%Vor%Aber ich habe keine Informationen darüber gefunden
Thx
Der Grund, warum Sie in einem Controller $ this- & gt; -Container erhalten können, ist, dass er in den Controller eingefügt wird, den Sie erweitern.
Sie könnten beispielsweise den Container injizieren und in Ihrem Konstruktor einrichten.
services.yml
%Vor%NotificationService.php
%Vor%Weitere Informationen finden Sie unter Dependency-Injektion .
BITTE BEACHTEN
Im Allgemeinen ist das Injizieren in den Behälter schlecht und bedeutet, dass es einen besseren Weg gibt, etwas zu tun. In diesem Fall hat Symfony bereits die Lösung, die wir zu lösen versuchen.
Geben Sie SwiftMailer ein.
Und speziell der Abschnitt über das Versenden aller Dev-E-Mails an einen Satz Adresse .
Versuchen Sie Swiftmailer einzurichten und fügen Sie Ihrer dev-Konfiguration folgendes hinzu:
app / config / config_dev.yml
%Vor%Tags und Links symfony