Djangoでビューを作ってみます。
exampleプロジェクト、testappアプリケーションの構成は下記の通りです。
フォルダ構成
example
│ db.sqlite3
│ manage.py
│
├─example
│ │ settings.py
│ │ urls.py
│ │ wsgi.py
│ │ __init__.py
│ └─
│
│
└─testapp
│ admin.py
│ apps.py
│ models.py
│ tests.py
│ views.py
│ __init__.py
│
└─migrations
__init__.py
example/testapp/views.pyを編集
views.pyには、pythonでの処理を行ってから、レスポンスにビューを渡します。
今回は文字列を返していますが、htmlファイルなどを渡すことができます。
from django.http import HttpResponse
def index(request):
return HttpResponse("Hello Django")
example/testapp/urls.pyを作る
アプリケーション単位で、urlの設定をします。
testappフォルダ内にurls.pyを作り、先ほど作ったviews.pyのindexをセットします。
from django.urls import path
from . import views
urlpatterns = [
path('', views.index, name='index'),
]
example/urls.pyの編集
こちらは、exampleプロジェクトのurls.pyです。testappのurls.pyと混同しないように気を付けましょう。
プロジェクトを作ったときのデフォルトの状態
from django.contrib import admin
from django.urls import path
urlpatterns = [
path('admin/', admin.site.urls),
]
このファイルに、testappのurls.pyの設定をincludeメソッドで適用させ、urlパターンを追加します。
編集後
from django.contrib import admin
from django.urls import path, include
urlpatterns = [
path('testapp/', include('testapp.urls')),
path('admin/', admin.site.urls),
]
これで、runserverで起動して
http://127.0.0.1:8000/testapp/にブラウザでアクセスすると、
views.pyのindexメソッドで指定したレスポンスが返ってきます。

