Wie kann man eine globale Zweigvariable erhalten, um die Änderung beizubehalten, nachdem sie mit includes geändert wurde? Meine gewünschte Ausgabe ist "Set @ Tiefer", obwohl ich "Originaleinstellung" bekomme.
app / config / config.yml
%Vor%root.html.twig
%Vor%levelone.html.twig
%Vor%deeper.html.twig
%Vor%Interessante Frage und ich weiß keine Antwort, aber keine Menge, die mit Blöcken und Sachen herumalbern, wird funktionieren. Ich habe in den generierten PHP-Cache-Vorlagendateien nachgesehen. Wenn Sie eine Variable zurückgeben, sieht das so aus:
%Vor%Im Grunde sucht es zuerst nach testvar in Ihrem lokalen Kontext. Wenn nicht gefunden, dann sieht es im globalen Kontext aus.
Wenn Sie den Wert von test var setzen, erhalten Sie:
%Vor%So wird nur der lokale Kontext aktualisiert. Der geänderte Wert verschwindet, wenn die enthaltene Vorlage zurückgegeben wird.
Also sieht es zumindest so aus, als wären globale Variablen wirklich nur lesbar.
Es könnte möglich sein, dies durch eine Erweiterung zu tun. Ich weiß nicht genug über die Interna.
Haben Sie versucht, eine globale Variable über Twig zu definieren? Sie können dies in Ihrer Datei config.yml wie folgt tun:
%Vor%% {{my_global_var}}
in Ihrer Vorlage druckt myvalue
Weitere Informationen finden Sie in den offiziellen Dokumenten .