Получение ошибки "TemplateDoesNotExist at / index.html" при запуске проекта django
Я попробовал несколько решений, которые я нашел, но безуспешно.
Вот файл urls.py (settings.py был слишком длинным для размещения этого вопроса):
urls.py
from django.contrib import admin
from django.urls import path
from django.views.generic import TemplateView
from django.conf.urls import include
admin.site.site_header = 'Marked By Covid Admin'
urlpatterns = [
path('grappelli/', include('grappelli.urls')),
path('admin/', admin.site.urls),
path('', TemplateView.as_view(template_name='index.html'), name='index'),
]
Пожалуйста, скажите мне, какая часть файла settings.py необходима для решения проблемы, и я добавлю ее.
Я буду благодарен за ваши предложения относительно того, что не так.
Спасибо!
Эта строка в ваших настройках указывает Django, где искать шаблоны:
'DIRS': [os.path.join(BASE_DIR, 'client-app/dist')]
Базовый бэкенд Django для этого (который вы также используете), проверяет наличие шаблона следующим образом:
YourProject/
YourProject/
<the directory you placed in 'DIRS'>
your_app/
<the directory you placed in 'DIRS'>
your_second_app/
<the directory you placed in 'DIRS'>
По умолчанию это 'templates'
, поэтому все просто. Вы изменили его на 'client-app/dist'
, поэтому вы можете поместить index.html, например, сюда:
YourProject/
YourProject/
client-app/
dist/
index.html
Он должен быть в приложении (которое также находится в INSTALLED_APPS) или в папке core проекта.
я вижу:
TEMPLATES = [
{
# some staff
'DIRS': [os.path.join(BASE_DIR, 'client-app/dist')], # CLIENT-APP/DIST!
# otherr staff
}
]
Но ваш шаблон index.html
, который вы поместили в папку: CLIENT-APP/PUBLIC
:
Вы действительно хотите это сделать?