LoginSignup
2

More than 5 years have passed since last update.

【Django】Hello World

Last updated at Posted at 2019-02-05

概要

DjangoでHello Worldを表示する。
最小構成での実装を行います。

環境設定

  • OS X
  • python3
  • Django

実装

1 . プロジェクトを作成する。

プロジェクト名をtutorialとし、プロジェクトの雛形を作る。

プロジェクトの雛形を生成
django-admin startproject [プロジェクト名]
プロジェクトの雛形を生成
django-admin startproject tutorial
実行結果
tutorial
|
├── manage.py
|
└── tutorial
    ├── __init__.py
    ├── settings.py
    ├── urls.py
    └── wsgi.py

2 . アプリを作成する。

Djangoでは、1つのプロジェクトに対し、複数のアプリを作成する。
アプリ名をhelloとし、アプリの雛形を作成する。

アプリの雛形を生成
python manage.py startapp [アプリ名]
アプリの雛形を生成
python manage.py startapp hello
実行結果
tutorial
|
├── manage.py
|
├── tutorial
|   ├── __init__.py
|   ├── settings.py
|   ├── urls.py
|   └── wsgi.py
|
└── hello
    ├── __init__.py
    ├── admin.py
    ├── apps.py
    ├── migrations
    │   └── __init__.py
    ├── models.py
    ├── tests.py
    └── views.py

3 . プロジェクトのルーティングを設定する。
URLのルーティングは、2段階で行う。
はじめに、プロジェクトから各アプリへのルーティングを設定する。
tutorial/urls.py から hello/urls.py にルーティングする。

tutorial/urls.py
- from django.conf.urls import url
+ from django.conf.urls import url, include
  from django.contrib import admin

  urlpatterns = [
    url(r'^admin/', admin.site.urls),
+   url(r'^hello/', include('hello.urls')),
  ]

4 . アプリのルーティングを設定する。
views.pyの各メソッドへのルーティングを設定する。
hello/urls.py を作成し、hello/viewsindex メソッドを呼び出す。

hello/urls.py
from django.conf.urls import url
from . import views

urlpatterns = [
    url(r'^world$', views.index),
]

5 . hello/views.pyindex メソッドで、Hello Worldを返す。

hello/views.py
  from __future__ import unicode_literals
  from django.db import models
+ from django.http import HttpResponse

+ def index(request):
+   return HttpResponse("Hello World")

6 . サーバを起動する。

サーバの起動
python manage.py runserver

7 . 127.0.0.1:8000/hello/world で確認する。

動作確認
open 127.0.0.1:8000/hello/world

解説

① ユーザが、/hello/worldにリクエストする。
② APサーバは、プロジェクトの urls.py である tutorial/urls.py を確認する。
urlpatternsより、ルーティング先を hello/urls.pyに決定 。
④ アプリの urls.py である hello/urls.py を確認する。
urlpatternsより、ルーティング先を hello/views.py の index メソッド決定。
hello/views.py の index メソッドより、Hello World を返す。
alt

まとめ

最小構成でHello Worldを表示しました。
シーケンス図より、処理順を説明しました。
間違い・指摘等があればコメントお願いします。

参考文献

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2