看完這篇文章知道原理后,發現我的項目根目錄下templates里面有一個空的index.html模版,導致和index文件下的templates文件夾里面模版名重復了,所以調用了根目錄下的模版


Djang遇到找不到模板HTML文件的的問題,網上找到的很多解決辦法都是修改
把settings.py->"templates"->"DIRS"修改為
'DIRS': [os.path.join(BASE_DIR,"templates")]
但是我發現這里在新建項目時早就自動配置好了的,根本不需要改
'DIRS': [BASE_DIR / 'templates']
最后在官方文檔中找到答案
首先,在你的 polls 目錄里創建一個 templates 目錄。Django 將會在這個目錄里查找模板文件。
你項目的 TEMPLATES 配置項描述了 Django 如何載入和渲染模板。默認的設置文件設置了 DjangoTemplates 后端,並將 APP_DIRS 設置成了 True。這一選項將會讓 DjangoTemplates 在每個 INSTALLED_APPS 文件夾中尋找 "templates" 子目錄。這就是為什么盡管我們沒有像在第二部分中那樣修改 DIRS 設置,Django 也能正確找到 polls 的模板位置的原因。
在你剛剛創建的 templates 目錄里,再創建一個目錄 polls,然后在其中新建一個文件 index.html 。換句話說,你的模板文件的路徑應該是 polls/templates/polls/index.html 。因為``app_directories`` 模板加載器是通過上述描述的方法運行的,所以 Django 可以引用到 polls/index.html 這一模板了。
————————————————
我的APP中已經建立了templates文件夾,也在其中添加了APP同名的子文件夾,唯一沒有做的就是把APP添加到settings.py的 INSTALLED_APPS 因為我一開始誤以為這個只是和models生成數據表有關,而我的APP中並不需要models,也不需要生成數據表,所以就沒有把APP添加到INSTALLED_APPS 。
最后添加APP到INSTALLED_APPS ,終於找到模板了
