PythonのWEBフレームワークDjangoの使い方 アプリケーションの作成

PythonのWEBフレームワークDjangoの使い方 アプリケーションの作成
Djangoで「Hello World!」と表示させてみます。

環境

MacにPythonのWEBフレームワークDjangoをインストールする方法」で構築した環境を例に説明します。

ディレクトリに移動し仮想環境に入る

仮想環境から抜けている場合、以下の手順で入り直します。

ディレクトリに移動します。

cd ~/django_sample/

以下のコマンドでPythonの仮想環境を有効にしましょう。

source myvenv/bin/activate

プロンプトの表示が以下のように変わればOKです。

(myvenv)<マシン名>:django_sample <ユーザー名>$」

アプリケーションを作る

「Hello World!」と表示させるプログラムを作ってみます。

(myvenv)<マシン名>:my_django <ユーザー名>python manage.py startapp hello

treeコマンドで構成を確認してみましょう。「hello」ディレクトリ作られていることが確認できます。

(myvenv)<マシン名>:my_django <ユーザー名>tree -L 2
 .
 ├── db.sqlite3
 ├── hello
 │   ├── __init__.py
 │   ├── admin.py
 │   ├── apps.py
 │   ├── migrations
 │   ├── models.py
 │   ├── tests.py
 │   └── views.py
 ├── manage.py
 ├── mysite
 │   ├── __init__.py
 │   ├── __pycache__
 │   ├── settings.py
 │   ├── urls.py
 │   └── wsgi.py
 └── myvenv
 ├── bin
 ├── include
 ├── lib
 ├── pip-selfcheck.json
 └── pyvenv.cfg

Django プロジェクトにアプリケーション組み込み

作成したアプリケーションをプロジェクトに組み込みます。
プロジェクト設定ファイル(mysite/settings.py)の INSTALLED_APPS という変数に追加します。

mysite/settings.py
vim mysite/settings.py

「i」でインサートに切り替えます。
「INSTALLED_APPS」探し、末尾に「 ‘hello’,」と記入します。

33 INSTALLED_APPS = [
 34 'django.contrib.admin',
 35 'django.contrib.auth',
 36 'django.contrib.contenttypes',
 37 'django.contrib.sessions',
 38 'django.contrib.messages',
 39 'django.contrib.staticfiles',
 40 'hello',
 41 ]

「control + C」でノーマルモードに切り替えた後、「:wq」で保存して終了します。

ビュー関数の追加

hello/views.py
vim hello/views.py

「i」でインサートに切り替え、以下を記入します。

from django.http.response import HttpResponse


def hello_world(request):
    return HttpResponse('Hello World!')

「control + C」でノーマルモードに切り替えた後、「:wq」で保存して終了します。

URLディスパッチャ

hello/urls.py

hello/urls.py
vim hello/urls.py

「i」でインサートに切り替え、以下を記入します。

from django.conf.urls import url
from . import views

urlpatterns = [
url(r'^$', views.hello_world, name='hello_world'),
]

「control + C」でノーマルモードに切り替えた後、「:wq」で保存して終了します。

mysite/urls.py

vim mysite/urls.py

「i」でインサートに切り替え、以下を記入します。

from django.conf.urls import include, url

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

「control + C」でノーマルモードに切り替えた後、「:wq」で保存して終了します。

ブラウザで確認

WEBサイトの動作を確認します。

開発用WEBサーバーを起動させます。

python manage.py runserver

ブラウザから以下のアドレスにアクセスしてください。

http://127.0.0.1:8000/hello

「Hello World!」と表示されれば成功です!