Kann ich eine Konfigurationsdatei wie YAML verwenden und damit Elementtext ausfüllen?Ist es möglich, Konfigurationselement-Halteelement-Eingaben zu machen?
Beispiel YAML:
YOUR_NAME: "your_name"
Output HTML:
<h1>{YOUR_NAME}</h1>
Kann ich eine Konfigurationsdatei wie YAML verwenden und damit Elementtext ausfüllen?Ist es möglich, Konfigurationselement-Halteelement-Eingaben zu machen?
Beispiel YAML:
YOUR_NAME: "your_name"
Output HTML:
<h1>{YOUR_NAME}</h1>
Ja, das sicherlich möglich und leicht machbar. Ich benutze das innerhalb des Pyramiden-Frameworks, indem ich die YAML-Datei analysiere und das resultierende Mapping/Dict verwende, um das an die Template-Engine übergebene Wörterbuch zu aktualisieren.
@view_config(route_name='search', renderer='templates/search.pt')
def my_search(self):
res = dict(YOUR_NAME="----- not set -----")
with open('your_file.yaml') as fp:
res.update(ruamel.yaml.safe_load(fp))
return res
In der Vorlage Verwendung <h1>${YOUR_NAME}</h1>
oder <h1>${structure:YOUR_NAME}</h1>
im Falle sollte unescaped werden die Werte (der Dollar für das Chamäleon Template-Engine benötigt wird).
Beachten Sie, dass es nicht notwendig ist "your_name"
in YAML zu zitieren, nicht einmal, wenn es Räume hatte:
YOUR_NAME: first_name last_name
(Namen normalerweise nicht Zeichen oder Zeichenfolgen enthalten, für die würden Sie der skalaren Wert unter Angabe benötigen würde)