Rumah > pembangunan bahagian belakang > Tutorial Python > Mengapa Apl Flask Saya Membuang Ralat `TemplateNotFound`, Walaupun Fail Templat Saya Wujud?

Mengapa Apl Flask Saya Membuang Ralat `TemplateNotFound`, Walaupun Fail Templat Saya Wujud?

Susan Sarandon
Lepaskan: 2024-12-13 19:02:11
asal
848 orang telah melayarinya

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

Menyelesaikan Masalah Ralat TemplateNotFound Flask

Apabila cuba untuk memaparkan templat dalam Flask, seperti 'home.html', anda mungkin menghadapi ' ralat jinja2.exceptions.TemplateNotFound' walaupun terdapat fail. Memahami sebab perkara ini berlaku dan menyelesaikan isu adalah penting untuk pemaparan templat yang berjaya.

Punca:

Sebab utama ralat ini ialah Flask tidak dapat mengesan fail templat yang ditentukan dalam direktori templat lalainya, iaitu 'templat'. Secara lalai, Flask mencari templat dalam subdirektori ini bersama-sama modul Python tempat apl Flask ditakrifkan.

Penyelesaian:

Pastikan templat 'home.html' diletakkan di tempat yang betul. Ia sepatutnya berada dalam subdirektori 'template' bersebelahan dengan modul Python.

Pertimbangan Tambahan:

  • Jika apl Flask ialah pakej, 'templat ' folder mesti dibuat dalam direktori pakej.
  • Jika anda telah menamakan folder templat anda secara berbeza, anda boleh menentukan lokasinya menggunakan 'app.py'. Sebagai contoh, 'app = Flask(__name__, template_folder='template')' akan menggunakan direktori 'template'.
  • Flask menyediakan pilihan 'EXPLAIN_TEMPLATE_LOADING' untuk mendapatkan maklumat terperinci tentang percubaan carian templat. Ini boleh membantu untuk penyahpepijatan.

Contoh Struktur Templat:

  • Untuk apl tidak berpakej:
myproject/
    app.py
    templates/
        home.html
Salin selepas log masuk
  • Untuk berbungkus app:
myproject/
    mypackage/
        __init__.py
        templates/
            home.html
Salin selepas log masuk

Dengan mengikut garis panduan ini, anda boleh menyelesaikan ralat TemplateNotFound dengan berkesan dan menjadikan templat anda seperti yang dimaksudkan.

Atas ialah kandungan terperinci Mengapa Apl Flask Saya Membuang Ralat `TemplateNotFound`, Walaupun Fail Templat Saya Wujud?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan