Heim >Backend-Entwicklung >Python-Tutorial >Warum gibt meine Flask-App den Fehler „TemplateNotFound' aus, obwohl meine Vorlagendatei vorhanden ist?

Warum gibt meine Flask-App den Fehler „TemplateNotFound' aus, obwohl meine Vorlagendatei vorhanden ist?

Susan Sarandon
Susan SarandonOriginal
2024-12-13 19:02:11848Durchsuche

Why Does My Flask App Throw a `TemplateNotFound` Error, Even Though My Template File Exists?

Fehlerbehebung beim TemplateNotFound-Fehler von Flask

Beim Versuch, eine Vorlage in Flask zu rendern, z. B. „home.html“, stoßen Sie möglicherweise auf die Meldung „ Fehler „jinja2.Exceptions.TemplateNotFound“, obwohl die Datei vorhanden ist. Für eine erfolgreiche Vorlagenwiedergabe ist es entscheidend, zu verstehen, warum dies auftritt, und das Problem zu beheben.

Ursache:

Der Hauptgrund für diesen Fehler ist, dass Flask die angegebene Vorlagendatei nicht finden kann in seinem Standardvorlagenverzeichnis, das „templates“ heißt. Standardmäßig sucht Flask nach Vorlagen in diesem Unterverzeichnis neben dem Python-Modul, in dem die Flask-App definiert ist.

Lösung:

Stellen Sie sicher, dass die Vorlage „home.html“ vorhanden ist an der richtigen Stelle platziert wird. Es sollte sich im Unterverzeichnis „templates“ neben dem Python-Modul befinden.

Zusätzliche Überlegungen:

  • Wenn es sich bei der Flask-App um ein Paket handelt, werden die „templates Der Ordner „muss im Paketverzeichnis erstellt werden.
  • Wenn Sie Ihren Vorlagenordner anders benannt haben, können Sie seinen Speicherort mit angeben 'app.py'. Beispielsweise würde „app = Flask(__name__, template_folder='template')“ das Verzeichnis „template“ verwenden.
  • Flask bietet die Option „EXPLAIN_TEMPLATE_LOADING“, um detaillierte Informationen über Vorlagensuchversuche zu erhalten. Dies kann beim Debuggen hilfreich sein.

Beispielvorlagenstruktur:

  • Für eine nicht gepackte App:
myproject/
    app.py
    templates/
        home.html
  • Für eine verpackte App:
myproject/
    mypackage/
        __init__.py
        templates/
            home.html

Von Wenn Sie diese Richtlinien befolgen, können Sie den TemplateNotFound-Fehler effektiv beheben und Ihre Vorlagen wie vorgesehen rendern.

Das obige ist der detaillierte Inhalt vonWarum gibt meine Flask-App den Fehler „TemplateNotFound' aus, obwohl meine Vorlagendatei vorhanden ist?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn