Django.template.exceptions.TemplateDoesNotExist: customer/base.html
- My customers urls.py
'''
urlpatterns = [
path('', views.base ,name= 'customer-base'),
path('Hall/', views.Hall ,name= 'customer-Hall'),
path('Food_item/', views.Food_item ,name= 'customer-food'),
path('About_us/', views.About_us ,name= 'customer-about'),
]
'''
- My Web_project urls.py
'''
urlpatterns = [
path('admin/', admin.site.urls),
path('', include('customer.urls')),
]
'''
- My views.py
'''
def base(request):
return render(request, "customer/base.html", {"title":"base"})
def Hall(request):
return render(request, "customer/Hall.html", {"title":"Hall"})
def Food_item(request):
return render(request, "customer/Food_item.html", {"title":"Food"})
def About_us(request):
return render(request, "customer/About_us.html", {"title":"About"})
'''
Я перепробовал все, но у меня ничего не получилось.
Проверьте в вашем settings.py что эта строка у вас настроена или нет
TEMPLATES = [
{
....
'DIRS': [BASE_DIR / 'templates'],
}
]
Ваша проблема не совсем точно определена. Но проблема в размещении вашей папки templates. В settings.py
TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [BASE_DIR / 'templates'], # adding templates folder to base directory of each app
'APP_DIRS': True,
'OPTIONS': {
# ... some options here ...
},
},
]
Если у вас есть приложение под названием Customer, то внутри приложения есть директория templates, затем в views
def Hall(request):
return render(request, "Hall.html", {"title":"Hall"})
должен получить Hall.html
, помещенный в папку templates того же приложения. Надеюсь, это вам поможет
Убедитесь, что структура папок выглядит следующим образом
├── db.sqlite3
├── manage.py
├── customer
├── templates
│ └── customer
│ └── base.html
│ └── Hall.html
│ └── Food_item.html
│ └── About_us.html
└── Web_project