ディレクトリ構成、ソースは下記のとおりです。
調べても解決が難しく、お力添えいただきたくお願いします。
環境:Anaconda,Spyder
アクセス先:http://localhost:8000/top/
エラーメッセージ:TemplateDoesNotExist at /top/
【settings.py TEMPLATES部分】
TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [],
'APP_DIRS': True,
'OPTIONS': {
'context_processors': [
'django.template.context_processors.debug',
'django.template.context_processors.request',
'django.contrib.auth.context_processors.auth',
'django.contrib.messages.context_processors.messages',
],
},
},
]
※'DIRS'が空欄なので、templates直下のtop.htmlを探して認識されるはず・・・
【system.urls.py】
from django.contrib import admin
from django.urls import path, include
urlpatterns = [
path('admin/', admin.site.urls),
path('top/', include('top.urls')),
]
【top.urls.py】
from django.urls import path
from.import views
app_name = 'top'
urlpatterns = [
path('', views.TopView.as_view(), name="top"),
]
【top.views.py】
from django.views import generic
class TopView(generic.TemplateView):
template_name = "top.html"
【top.templates.top.html】
<!DOCTYPE html> <html lang="ja"> <head> <meta charset="UTF-8"> <title>Top</title> </head> <body></body> </html><h1>Hello World</h1>
どうぞ、よろしくおねがいします。
【追記】
エクセス先のエラーメッセージでは下記のようになぜか異なるフォルダのtemplatesを探しているようでした。
Template-loader postmortem
Django tried loading these templates, in this order:
Using engine django:
django.template.loaders.app_directories.Loader: C:~\anaconda3\envs\django\lib\site-packages\django\contrib\admin\templates\top.html (Source does not exist)
django.template.loaders.app_directories.Loader: C:~\anaconda3\envs\django\lib\site-packages\django\contrib\auth\templates\top.html (Source does not exist)
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/07/23 07:58 編集
2020/07/23 06:31
2020/07/23 06:40
2020/07/23 08:24 編集
2020/07/23 08:47
2020/07/23 09:01