前提・実現したいこと
Python初心者です。
下記内容についてご教示頂けると幸いです。
Djangoにてログイン機能の作成
只今ログイン後,他の画面に遷移する部分を作成中なのですが,
http://127.0.0.1:8000/kanban/home/を実行したところ,
TemplateDoesNotExist at /kanban/home/とエラーが出力されました。
※http://127.0.0.1:8000/kanbanには入れます。
Windows10
Python3.7.7
Django3.0
Pipenvにて作成
ディレクトリの構造
kanban ├ config │ ├─ __init__.py │ ├─ asgi.py │ ├─ settings.py │ ├─ urls.py │ └─wsgi.py │ ├ kanban │ ├─ __init__.py │ ├─ admin.py │ ├─ apps.py │ ├─ models.py │ ├─ tests.py │ ├─ urls.py │ └─ views.py │ ├─ migrations │ │ └─ __init__.py │ └─ templates │ └─ kaban │ ├─ index.html │ └─ home.html ├ db.sqlite3 ├ manage.py ├ manage.py ├ Pipfile └ Pipfile.lock
発生している問題・エラーメッセージ
TemplateDoesNotExist at /kanban/home/ kanban/home.html Request Method: GET Request URL: http://127.0.0.1:8000/kanban/home/ Django Version: 3.0 Exception Type: TemplateDoesNotExist Exception Value: kanban/home.html Exception Location: C:\Users***.virtualenvs\kanban-VHk3nDYj\lib\site-packages\django\template\loader.py in get_template, line 19 Python Executable: C:\Users***.virtualenvs\kanban-VHk3nDYj\Scripts\python.exe Python Version: 3.7.7 Python Path: ['C:\Users\***\kanban', 'C:\Users\***\.virtualenvs\kanban-VHk3nDYj\Scripts\python37.zip', 'C:\Users\***\AppData\Local\Programs\Python\Python37\DLLs', 'C:\Users\***\AppData\Local\Programs\Python\Python37\lib', 'C:\Users\***\AppData\Local\Programs\Python\Python37', 'C:\Users\***\.virtualenvs\kanban-VHk3nDYj', 'C:\Users\***\.virtualenvs\kanban-VHk3nDYj\lib\site-packages']
該当のソースコード
【kanban/config/urls.py】 from django.contrib import admin from django.urls import include, path urlpatterns = [ path("kanban/", include("kanban.urls")), path('admin/', admin.site.urls), ]
【kanban/config/setting.py】 # Application definition INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'kanban.apps.KanbanConfig', ] MIDDLEWARE = [ 'django.middleware.security.SecurityMiddleware', 'django.contrib.sessions.middleware.SessionMiddleware', 'django.middleware.common.CommonMiddleware', 'django.middleware.csrf.CsrfViewMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware', 'django.contrib.messages.middleware.MessageMiddleware', 'django.middleware.clickjacking.XFrameOptionsMiddleware', ] ROOT_URLCONF = 'config.urls' 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', ], }, }, ]
【kanban/kanban/urls.py】 from django.urls import path from . import views app_name = "kanban" urlpatterns = [ path("", views.index, name="index"), path("home/", views.home, name="home"), ]
【kanban/kanban/views.py】 from django.shortcuts import render # Create your views here. from django.http import HttpResponse def index(request): return render(request, "kaban/index.html") def home(request): return render(request, "kanban/home.html")
【home.html】 <!doctype html> <html lang="ja"> <head> <!-- Required meta tags --> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> <!-- Bootstrap CSS --> <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css" integrity="sha384-ggOyR0iXCbMQv3Xipma34MD+dH/1fQ784/j6cY/iJTQUOhcWr7x9JvoRxT2MZw1T" crossorigin="anonymous"> <title>kanban</title> </head> <body> <header> <nav class="navbar navbar-expand-lg navbar-light bg-light"> <a class="navbar-brand" href="{% url 'kanban:index' %}">kanban</a> <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation"> <span class="navbar-toggler-icon"></span> </button> <div class="collapse navbar-collapse" id="navbarSupportedContent"> <ul class="navbar-nav mr-auto"> </ul> <ul class="navbar-nav"> <li class="nav-item"> <a class="nav-link" href="#">ログイン</a> </li> <li class="nav-item"> <a class="nav-link" href="#">サインアップ</a> </li> </ul> </div> </nav> </header> <main> <h1>サインアップ完了</h1> <p>サインアップが完了しました。</p> </main> <!-- Optional JavaScript --> <!-- jQuery first, then Popper.js, then Bootstrap JS --> <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.7/umd/popper.min.js" integrity="sha384-UO2eT0CpHqdSJQ6hJty5KVphtPhzWj9WO1clHTMGa3JDZwrnQq4sF86dIHNDz0W1" crossorigin="anonymous"></script> <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js" integrity="sha384-JjSmVgyd0p3pXB1rRibZUAYoIIy6OrQ6VrjIEaFf/nJGzIxFDsf4x0xIM+B07jRM" crossorigin="anonymous"></script> </body> </html>
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2020/06/16 12:23