Strukturieren von Go-Vorlagen in AppEngine-Anwendungen für Hierarchien, Bearbeiten und Neuladen
Dieser Artikel befasst sich mit der Strukturierung von Vorlagen in der Go-basierten AppEngine Anwendungen, Adressierung hierarchischer Strukturen, einfache Bearbeitung und automatische Vorlage wird neu geladen.
Hierarchische Struktur
Um eine hierarchische Struktur für Vorlagen zu erstellen, wird empfohlen, Vorlagen im Stammverzeichnis Ihres Pakets in einem speziellen Unterverzeichnis für Vorlagen zu speichern. Dies ermöglicht eine organisierte Organisation und vereinfacht die Durchquerung durch template.ParseFiles().
Einfache Bearbeitung
Das Einbetten von Vorlagentext in .go-Dateien kann die Bearbeitung mit HTML-Tools behindern. Um dieses Problem zu beheben, speichern Sie Vorlagen als Rohtextdateien im Unterverzeichnis „Vorlagen“. Obwohl aus Leistungsgründen empfohlen wird, Vorlagen nicht direkt hochzuladen, gibt es alternative Ansätze.
Automatisches Neuladen
Das automatische Neuladen von Vorlagen auf dem Entwicklungsserver kann durch Definieren erreicht werden eine Vorlagenvariable auf Paketebene. Diese Variable wird während der Paketinitialisierung ausgefüllt und bei allen Vorlagenänderungen aktualisiert.
Beispielprojektstruktur
Beachten Sie die folgende Projektstruktur:
|-- app.yaml |-- app | +-- http.go |-- templates | +-- base.html +-- github.com +-- storeski +-- appengine |-- products | +-- http.go | +-- templates | |-- list.html | |-- detail.html +-- account |-- http.go +-- templates |-- overview.html |-- notifications.html
Modularer Ansatz mit Paketeigentum
Der empfohlene Ansatz umfasst die Verwendung von Paketen zur Verarbeitung spezifischer URLs Präfixe. Jedes Paket besitzt ein eigenes Vorlagen-Unterverzeichnis, in dem sich seine Vorlagen befinden. Diese Modularität ermöglicht eine Vorlagenverwaltung, die speziell auf die Funktionalität des Pakets zugeschnitten ist.
Erweitern einer Basisvorlage
Um die Konsistenz aufrechtzuerhalten, erstellen Sie eine Basisvorlage, die andere Vorlagen erweitern können. Sie können beispielsweise eine templates/base.html-Vorlage definieren und andere Vorlagen mithilfe der erweiterten Vorlagenfunktion davon erben lassen.
Codebeispiel
Hier ist ein Beispiel dafür Definieren einer Basisvorlage und Parsen zusätzlicher Vorlagen innerhalb einer Handler:
templates/base.html
<!DOCTYPE HTML> <html> <head>
Das obige ist der detaillierte Inhalt vonWie kann ich Go-Vorlagen in App Engine effektiv strukturieren, um Hierarchie, einfache Bearbeitung und automatisches Neuladen zu gewährleisten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!