Django:汎用ビューを使ってHello World!をやってみる

初心者の登竜門、Hello World!をDjangoでやります。

Django環境の起動などについてはここを参照してください
2分でできるDjango環境構築

なにはともあれプロジェクトの作成

[code lang=text]
python startproject project .
[/code]

まずはproject/settings.pyにアプリケーションを含めます。今回作るアプリケーション名はhelloなので以下のように記述します。
[python title=”setting.py”]

INSTALLED_APPS = [
‘django.contrib.admin’,
‘django.contrib.auth’,
‘django.contrib.contenttypes’,
‘django.contrib.sessions’,
‘django.contrib.messages’,
‘django.contrib.staticfiles’,
‘hello.apps.HelloConfig’,
]

[/python]

次にパスを追加します。
project/urls.pyに新たなURLを宣言します。

[python title=”urls.py”]
from django.contrib import admin
from django.urls import include, path

urlpatterns = [
path(”, include(‘hello.urls’)),
path(‘admin/’, admin.site.urls),
]
[/python]

今度はpython startapp helloを実行しアプリケーションを作成してください。
作成されたアプリケーションにURLconfを追加するために、urls.pyを新たに作成して以下のコードを入力してください。

[python title=”urls.py”]
from django.urls import path
from . import views

app_name = ‘hello’

urlpatterns = [
path(”, views.Top.as_view(), name=’hello’),
]
[/python]

views.pyではタイトルにあるとおり汎用ビューを使います。

[python title=”views.py”]
from django.views import generic

class Top(generic.TemplateView):
template_name = ‘hello/hello.html’
[/python]

hello/templates/hello/にhello.htmlを作成してHello World!を記述しましょう。
[html title=”hello.html”]
<p>Hello World!</p>
[/html]

python manage.py runserverを実行し、localhost:8000へアクセスするとHello World!が表示されるはずです。