Проблема с одним и тем же именем шаблона в разных папках app в django
Я создаю две папки app1
и app2
командой startapp
. Затем я создаю папку templates
в обеих app1
и app2
. В обоих templates
я создаю a.html
, но с разным html-содержимым. В views.py
из app1
я создаю функцию для рендеринга в a.html
и когда я посещаю url этой функции, я получаю содержимое a.html
из app2
вместо app1
. А когда я удалил html-файл из app2
, я получил ожидаемое a.html
Так что же здесь произошло? Как я могу получить именно html-файл из app1
?
Мой django ver 3.2.8 и python ver 3.9.6
Заранее спасибо.
Для того чтобы указать django на правильный шаблон :
Ваше дерево выглядит следующим образом :
app1
- шаблоны
- app1
- a.html
- app1
- views.py
app2
- шаблоны
- app2
- a.html
- app2
- views.py
В вашем представлении в имени шаблона используйте следующий шаблон :
<app_name>/<template.html>
Например :
class MyView(TemplateView):
template_name = "app1/a.html"
И он должен работать как положено, загружая правильный шаблон.