Wir haben den FOSUserBundle erfolgreich konfiguriert; Login, Registrierung, Passwort zurücksetzen, usw. funktionieren alle gut.
Nun möchten wir das Login-Formular in unser allgemeines Site-Layout integrieren, insbesondere das Formular in den oberen rechten Bereich des Layout-Headers einfügen. Dies wäre einfach genug, wenn wir nur mit den Feldern Benutzername und Passwort arbeiten würden. Wir können jedoch nicht herausfinden, wie das CSRF-Token abgerufen werden kann, das vom FOSUserBundle-Dienst generiert wird:
%Vor%Ich habe versucht, das oben genannte innerhalb einer Twig-Erweiterung aufzurufen, die ansonsten gut funktioniert, aber anscheinend kann die Erweiterung den Container nicht richtig referenzieren.
Sicherlich gibt es eine einfache Möglichkeit, das FOSUserBundle CSRF-Token global zu erhalten?
Danke! Jason
Symfony 2.3:
Eine mögliche Lösung wäre, den csrf-Provider als globale Twig-Variable wie folgt zu definieren:
%Vor%Und dann in deinem Layout rufe es so auf:
%Vor%Sie müssen also keinen Controller aufrufen.
Symfony 2.4 und höher:
%Vor%und:
%Vor%