
目次
はじめに
Django を学習するには、何はともあれ公式チュートリアル「はじめての Django アプリ作成」からスタートしてみるのが良いでしょう。しかし、いざチュートリアル通りに進めようとしても躓く場合も多いと思います。そこで、「チュートリアルの進め方」シリーズとして、チュートリアルに沿った作業を行いながら補足事項をまとめることにしました。チュートリアルで躓いた際のヒントとしてお使いください。今回は、はじめての Django アプリ作成、その 1 についてまとめました。
利用環境は Ubuntu、 Linux Mint を中心として説明しますが、 Windows についても補足します。
記事中で例としてあげているディレクトリは、Linux の場合を想定しています。Windows の場合は、下記の様に読み替えてください。
Linux | Windows |
~/worskpace | ホームディレクトリ\workspace |
~/env | ホームディレクトリ\env |
~/env/djtutorial/bin/activate | ホームディレクトリ\env\djtutorial\Scripts\activate |
準備
チュートリアルを進めるにあたって Django の利用環境を整える必要があります。他の Python 環境に干渉しないよう、仮想環境を作っておくのが良いと思います。
まだ venv を使った事がない場合はインストールしておきます。(Windows では、 Python3.6/3.7 がインストールされていれば、venv はインストール済なのでインストール作業は不要です。)
$ sudo apt install python3-venv
仮想環境のフォルダ(ここでは、~/env/djtutorial とします。)を作成します。
$ python3 -m venv ~/env/djtutorial
仮想環境 djtutorial をアクティベートします。(Windows の場合、冒頭の source は不要です。また、bin → Scripts と読み替えます。)
# Linux の場合 $ source ~/env/djtutorial/bin/activate # Windows の場合 > ホームディレクトリ\env\djtutorial\Scripts\activate
次に pip で Django をインストールします。(プロンプトは環境によって異なります。)
(djtutorial)$ pip install django (djtutorial)$ python -m django --version 2.1
2行目はインストールした Django のバージョンを調べています。 (チュートリアルに説明有り)
プロジェクトを作成する
ここでは、適当なワーキングディレクトリ (~/workspace とします) にプロジェクトを作成することとします。
$ cd ~/workspace $ django-admin startproject mysite
~/workspace/mysite が作成されました。
開発用サーバー
開発用サーバを起動します。
(djtutorial)$ cd mysite (djtutorial)$ python manage.py runserver
ブラウザで http://127.0.0.1:8000/ を確認します。
Polls アプリケーションをつくる
polls アプリケーションを作成します。
(djtutorial)$ python manage.py startapp polls
~/workspace/mysite/polls が作成されました。
はじめてのビュー作成
polls/views.py にビュー (index) を作成します。
from django.http import HttpResponse def index(request): return HttpResponse("Hello, world. Your're at the polls index.")
ビュー (index) では、HttpRequest (request) を受け取って HttepResponse を返すよう定義します。
次に、URLconf と呼ばれる URL をビューにマッピングする定義を書いたファイル (urls.py) を準備します。まず、polls の URLconf (polls/urls.py ) を作成して下記の様に記述します。
from django.urls import path from . import views urlpatterns = [ path('', views.index, name='index'), ]
- rout: URLパターン
- view: 対応するビュー関数
- kwargs: ビューに渡す追加パラメータ
- name: URLにつける名前。特にテンプレートで役立つ
次に、ルートの URLconf (mysite/urls.py) を開いて、 polls.urls を参照するように url パターンを追加します。
from django.contrib import admin from django.urls import include, path urlpatterns = [ path('polls/', include('polls.urls')), path('admin/', admin.site.urls), ]
include(module, namespace=None)
他の URLconf を参照する
- module: URLconf モジュール (もしくはモジュール名)
- namespace: インクルードされる URL エントリーに対するインスタンス名前空間 (オプション)
動作確認をします。サーバを起動します。
(djtutorial)$ python manage.py runserver
ブラウザで http://127.0.0.1:8000/ を開きます。
エラーになってしまいました。。。
アドレスをよく確認しましょう。アプリケーション名が抜けています。http://127.0.0.1:8000/polls/ にアクセスしましょう。
ROOT_URLCONF = 'mysite.urls'これにより、Djanogo は mysite.urls の記述を使って URL の解析を行います。
これでチュートリアルその1を終える事ができました。
次回は、Django チュートリアルの進め方 その 2 (1) です。
参考
-
- Django チュートリアルの進め方 その 1
- Django チュートリアルの進め方 その 2 (1)
- Django チュートリアルの進め方 その 2 (2)
- Django チュートリアルの進め方 その 2 (3)
- Django チュートリアルの進め方 その 3 (1)
- Django チュートリアルの進め方 その 3 (2)
- Django チュートリアルの進め方 その 4 (1)
- Django チュートリアルの進め方 その 4 (2)
- Django チュートリアルの進め方 その 5 (1)
- Django チュートリアルの進め方 その 5 (2)
- Django チュートリアルの進め方 その 6
- Django チュートリアルの進め方 その 7