サイドバーの「Django ドキュメント検索」というプレースホルダの入った検索では、Django ドキュメント (Django 2.1) の公式サイト内を検索できます
Django チュートリアルの進め方 その1

目次

はじめに

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'),
]
path
   urlpatterns 内で使用され、urlpatterns の要素を返す。
  • 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

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
settings.py の中に下記の記述があります。
ROOT_URLCONF = 'mysite.urls'これにより、Djanogo は mysite.urls の記述を使って URL の解析を行います。

これでチュートリアルその1を終える事ができました。

次回は、Django チュートリアルの進め方 その 2 (1)  です。

参考

低価格なのに高速・多機能・高セキュリティ 月額400円(税別)から最大容量100GB WordPress専用高速サーバー Z.com WP
おすすめの記事