jinja2.exceptions.TemplateNotFound 報錯處理


一、檢查模板文件夾是否正確。

遇到這個問題,首先需要檢查你的模板文件夾命名是否規范,Flask默認會在工程下尋找templates文件夾,這個是默認配置,不能寫成template或者其他名字。當然,如果你使用的是PyCharm創建的Flask項目,PyCharm默認會幫你創建這個模板文件夾,你只需要把這個模板文件放在這個模板文件夾中即可。在PyCharm中,這個文件夾有着特殊標記。
當然,我也嘗試過取消標記為template Folder,但是Flask依然能准確的找到這個模板文件夾。

二、關於模板路徑

如果你的模板文件夾命名沒有問題,那么我想你可能並不是在項目文件夾下直接使用render_template方式處理響應吧。你可能是在項目中創建了包。在這個包中實現對響應的處理。

這時你需要在這個包下創建一個名為templates的模板文件夾,再將這個模板文件放任其中。然后即可正常對模板文件進行渲染了;

其實,對於這個規則,Flask在其官方文檔中確有說明。

也就是說項目工程下的文件默認找到項目下的templates,而包中的文件默認找包中的templates文件夾,所以當需要在包內進行渲染,就先在這個包內創建一個templates目錄用於存放模板文件;

當然,除此之外,也可以通過對Flask對象設置template_folder屬性來設置;
app = Flask(__name__, template_folder='./templates')


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM