Wörterbuchliterale in Mako -Ausdrücken
-
30-09-2019 - |
Frage
Die folgende Syntaxfehler wirft "unerwartetes EOF beim Parsen" aus:
${foo({'bar':'baz'})}
Was ich denke, ist von der inneren Schließklammer. Das funktioniert gut:
${foo(dict(bar='baz'))}
Aber was ist die Syntax für die Verwendung eines Wörterbuchs?
Lösung
Von Brian Rue auf der Mako -Vorlagen Google Group:
Dies ist ein langjähriger Fehler; Verwenden Sie einfach dict (). Wenn Sie ein Wörterbuch mit Schlüsseln benötigen, die keine Zeichenfolgen sind, konvertieren Sie eine Liste von Tupeln in ein Diktat. zB anstelle davon:
${foo({1: 'a', 2: 'b'})}
mach das:
${foo(dict([(1, 'a'), (2, 'b')]))}
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow