2016-08-04 36 views
0

Ich habe ein kleines Problem mit dem Einrichten von Hashes in einem Zweig. Ich möchte ein Hash-Objekt verwenden, um einige Daten vorzubereiten, um sie später durch die JSON-Antwort (in Symfony3) zurückzusenden.Twig - Einrichten eines Hash mit indirekt benannten Tasten

Mit einem einfachen Beispiel, ist mein Code folgendermaßen aus:

{% set someName = 'Lola' %} 
{% set hashObject = {someName : 'someValue'} %} 
{{ dump(hash) }} 

Ich würde die hashObject gerne einen Wert von {'Lola': 'someValue'} haben, aber stattdessen, wenn ich diese 3 Zeilen von oben ausführen, ich werde die {'someName': 'someValue'} bekommen . Also, Twig vermutet, dass meine Variable tatsächlich eine Zeichenfolge ist und verwendet sie als Literalwert (wie in einigen hässlichen PHP-no-Fehler-Bericht Albtraum :)).

Ich schätze, es muss einen ordentlichen Weg um ihn herum geben, aber ich kann es nicht finden. Hilfe?

+0

Mögliches Duplikat von [Dynamic twig Variablennamen] (http://stackoverflow.com/questions/15560280/dynamic-twig-variable-names) – goto

Antwort

1

Sorry für das automatische Spamming, aber - wie so oft - fand ich eine Antwort, sobald ich jemanden fragte. Die Lösung besteht darin, die Klammer um den Schlüsselnamen zu verwenden.

{% set someName = 'Lola' %} 
{% set hashObject = {(someName): 'someValue'} %} 
{{ dump(hash) }} 

Es ist eigentlich eine saubere Lösung. Danke, Zweigteam. :)