Python / Web Framework

Django(ジャンゴ)入門

Djangoの意味・発音・何が作れるか・MTV構成・特徴・導入の流れまでを、初心者向けに整理したまとめページ。

最短で動かす
更新日
2026-02-26
キーワード
MTV / ORM / Admin / Forms
学びのゴール
構成と最短手順が掴める

Djangoとは

Django(ジャンゴ)は Python製のWebアプリケーションフレームワークで、 認証・管理画面・ORM・フォームなど、Web開発に必要な部品が最初からまとまっている フルスタック寄りの構成が特徴です(いわゆる “batteries included” の思想)。

「Webアプリを作るための土台セット」だと思うとイメージしやすいです。

意味・由来・発音

名前の由来

Django は、ジャズギタリストの Django Reinhardt(ジャンゴ・ラインハルト)に由来します。

発音

公式FAQでは 「JANG-oh(ジャングォ)」 で、 D は発音しない(silent)と説明されています。

覚え方

「ジャンゴ」。英語だと “ジャングォ” 寄り。Dは黙る。:contentReference[oaicite:1]{index=1}

Djangoで何が作れる?

  • 会員制サイト(ログイン・権限)
  • 業務Web(申請・承認・台帳)
  • EC/予約(商品・在庫・注文)
  • 管理画面つきCMS
  • API(DRFなどと組み合わせ)
  • データベース駆動のサービス全般

“batteries included” の通り、よくある機能が最初から揃っていて、初速が出しやすいのが強みです。:contentReference[oaicite:2]{index=2}

MTV(MVCとの違い)

Model

DB構造とデータ操作。ORMでテーブルをPythonクラスとして扱います。

Template

HTML表示。テンプレート言語で「見た目」を組み立てます。

View

ルーティングから呼ばれる処理。Modelの結果をTemplateへ渡します。

MVCでいうと、Djangoの「View」は “Controller寄り” に見えることが多いです(呼び名がややこしいポイント)。

特徴・メリット

管理画面(Admin)

モデルを登録するだけで、CRUDできる管理UIが用意できるのが強い。

認証・権限が標準搭載

ユーザー・グループ・権限・セッションなどを標準で扱えます。:contentReference[oaicite:3]{index=3}

フォーム&バリデーション

入力の受け取り、検証、エラーメッセージ表示まで流れが作りやすい。

セキュリティの基本が揃ってる

CSRF対策など、Webでやりがちな穴を埋める仕組みを最初から持っています。

拡張のための “contrib”

よくある機能を追加できる公式パッケージ群(django/contrib)が豊富。:contentReference[oaicite:4]{index=4}

最短スタート手順(ローカルで動かす)

  1. 仮想環境を作る(venv)
  2. Djangoをインストール
  3. プロジェクト作成
  4. 開発サーバ起動
Terminal
python -m venv .venv
# mac/linux:
source .venv/bin/activate
# windows:
# .venv\Scripts\activate

pip install django

django-admin startproject mysite
cd mysite
python manage.py runserver

ここまでで http://127.0.0.1:8000/ にアクセスすると動作確認できます。

フォームの考え方(ざっくり)

Form(フォーム)

入力項目・バリデーション・エラーをまとめて扱う層。

ModelForm

Modelと連動してフォームを自動生成しやすい(管理画面とも相性が良い)。

Example(Python)
# forms.py(例)
from django import forms

class ContactForm(forms.Form):
    name = forms.CharField(max_length=50)
    email = forms.EmailField()
    message = forms.CharField(widget=forms.Textarea)

Djangoのフォームは「入力→検証→エラー表示」を一気通貫で作るための仕組み、と押さえると迷いにくいです。

セキュリティ要点(最低限ここ)

  • CSRF:フォーム送信にはCSRFトークン(テンプレートでタグを入れる)
  • SECRET_KEY:漏らさない。Gitに上げない。環境変数で管理
  • DEBUG=False:本番は必ずFalse(情報漏えい防止)
  • 認証・権限:標準機能でまず作り、必要に応じて拡張:contentReference[oaicite:5]{index=5}

向いてる / 向いてない

向いてる

  • DB中心のWebアプリを素早く作りたい
  • 管理画面・権限・フォームが重要
  • チーム開発で「定番の型」が欲しい

向いてない(工夫が必要)

  • 超シンプルな1枚APIだけ欲しい(FastAPI等の方が軽い場合も)
  • 自由すぎる構成で作りたい(規約がある方が楽なことも)

関連する質問(FAQ)

Djangoとはどういう意味ですか?

Django Reinhardt(ジャズギタリスト)の名前が由来です。:contentReference[oaicite:6]{index=6}

Pythonのジャンゴとは何ですか?

Pythonで書かれたWebアプリ用フレームワークです。認証や管理画面などが揃っています。:contentReference[oaicite:7]{index=7}

Djangoで何が作れる?

会員制サイト、業務システム、EC/予約、管理画面つきCMS、APIなど「DB駆動のWebアプリ全般」です。

Djangoの発音は?

公式FAQでは「JANG-oh(ジャングォ)」で、Dは発音しないとされています。:contentReference[oaicite:8]{index=8}