1.

Django の Windows インストール完全ガイド — venv + pip + startproject

編集
この記事の要点
  • Django は Python の Web フレームワーク。 Windows 環境では Python 3.x → venv → pip install django の順
  • 仮想環境必須: python -m venv env.\env\Scripts\Activate.ps1 で隔離
  • プロジェクト作成: django-admin startproject mysite、 サーバ起動: python manage.py runserver
  • Windows 固有の注意: パス区切り(バックスラッシュ)、 文字コード (cp932 vs UTF-8)、 PowerShell の実行ポリシー
  • MySQL / PostgreSQL を使う場合は クライアントライブラリ DLL が必要。 開発は SQLite で十分

前提条件

項目推奨
OSWindows 10 / 11 (64bit)
Python3.10 以上(Django 5.0 は Python 3.10+)
Django5.0 LTS or 4.2 LTS
シェルPowerShell 推奨 (cmd でも可)
IDEVS Code or PyCharm

Step 1: Python のインストール確認

# バージョン確認
python --version
# Python 3.12.x

# pip 確認
python -m pip --version

# 入っていない or 古い場合
# https://www.python.org/downloads/ から最新を DL し再インストール
# インストール時「Add python.exe to PATH」を必ずチェック

Windows の python コマンド注意: Windows Store 版 Python が紐づくと python が Store を開くことがあります。 公式インストーラー版を入れて PATH を整理してください。

Step 2: プロジェクトフォルダと仮想環境

# プロジェクトフォルダを作る(パスに日本語・スペースは避ける)
mkdir C:\dev\mysite
cd C:\dev\mysite

# 仮想環境作成(env フォルダができる)
python -m venv env

# 有効化 (PowerShell)
.\env\Scripts\Activate.ps1

# 有効化 (cmd)
env\Scripts\activate.bat

# プロンプト先頭に (env) が表示されれば OK
(env) PS C:\dev\mysite>

# 抜けるとき
deactivate

PowerShell で「実行ポリシー」 エラーが出る場合:

# エラー: このシステムではスクリプトの実行が無効になっているため...
# 解決: 現在のユーザーで RemoteSigned に変更
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser

# 確認
Get-ExecutionPolicy

Step 3: Django のインストール

# 仮想環境を有効化してから
(env) PS C:\dev\mysite> python -m pip install --upgrade pip
(env) PS C:\dev\mysite> pip install django

# バージョン指定
pip install "django>=5.0,<6.0"
pip install django==4.2.7

# 確認
django-admin --version
# 5.0.x

# よく一緒に入れるもの
pip install djangorestframework         # REST API
pip install django-environ              # .env 管理
pip install Pillow                      # ImageField 用
pip install mysqlclient                 # MySQL 接続(後述)
pip install psycopg2-binary             # PostgreSQL 接続

# requirements.txt 保存
pip freeze > requirements.txt

Step 4: プロジェクト作成と起動

# プロジェクト雛形作成(末尾の . でカレントに展開)
django-admin startproject config .

# できるディレクトリ構成
# C:\dev\mysite\
#   manage.py
#   config\
#     __init__.py
#     settings.py
#     urls.py
#     asgi.py
#     wsgi.py
#   env\
#     (仮想環境)

# 初期マイグレーション
python manage.py migrate

# 開発サーバ起動
python manage.py runserver

# 起動メッセージ
# Watching for file changes with StatReloader
# Performing system checks...
# System check identified no issues (0 silenced).
# Django version 5.0.x, using settings 'config.settings'
# Starting development server at http://127.0.0.1:8000/
# Quit the server with CTRL-BREAK.

ブラウザで http://127.0.0.1:8000/ を開き、 ロケット画面が出ればインストール成功です。

Step 5: アプリ作成 (任意)

# アプリ作成
python manage.py startapp blog

# settings.py の INSTALLED_APPS に追加
INSTALLED_APPS = [
    ...,
    'blog',
]

# モデル → マイグレーション
python manage.py makemigrations
python manage.py migrate

# 管理画面ユーザ作成
python manage.py createsuperuser
# → http://127.0.0.1:8000/admin/ でログイン

Windows 固有の注意点

項目注意対処
パス区切りWindows は \、 Linux は /Python では os.path.join()pathlib.Path 使用
文字コードWindows デフォルトは cp932ファイルは encoding="utf-8" 明示
改行コードCRLFGit で core.autocrlf=true
長いパス260 文字制限レジストリで long path 有効化
シンボリックリンク管理者権限必要開発者モードを有効化
ポート競合8000 が IIS / Skype 等で使用中runserver 8080

MySQL / PostgreSQL 接続でハマるポイント

MySQL

# 1. mysqlclient (推奨だが Windows ではビルド失敗しがち)
pip install mysqlclient
# ↑ MySQL C コネクタが必要 → 失敗することが多い

# 2. ピュア Python の代替を使う
pip install PyMySQL

# settings.py 冒頭で互換化
import pymysql
pymysql.install_as_MySQLdb()

# settings.py
DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'mydb',
        'USER': 'root',
        'PASSWORD': 'pass',
        'HOST': '127.0.0.1',
        'PORT': '3306',
    }
}

PostgreSQL

# psycopg2-binary は wheel 配布なので Windows でも素直に入る
pip install psycopg2-binary

# settings.py
DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.postgresql',
        'NAME': 'mydb',
        'USER': 'postgres',
        'PASSWORD': 'pass',
        'HOST': '127.0.0.1',
        'PORT': '5432',
    }
}

VS Code の設定

// .vscode/settings.json
{
  "python.defaultInterpreterPath": ".\\env\\Scripts\\python.exe",
  "python.terminal.activateEnvironment": true,
  "[python]": {
    "editor.formatOnSave": true,
    "editor.defaultFormatter": "ms-python.black-formatter"
  },
  "files.encoding": "utf8",
  "files.eol": "\n"
}

// .vscode/launch.json (デバッグ)
{
  "version": "0.2.0",
  "configurations": [
    {
      "name": "Django",
      "type": "debugpy",
      "request": "launch",
      "program": "${workspaceFolder}\\manage.py",
      "args": ["runserver"],
      "django": true,
      "justMyCode": true
    }
  ]
}

FAQ

Q: Windows で MySQL クライアントのインストールに失敗する
A: mysqlclient は C ビルドが必要で Windows では難しい。 pymysql + pymysql.install_as_MySQLdb() が確実です。

Q: django-admin が「見つかりません」と言われる
A: 仮想環境を有効化していない可能性大。 (env) がプロンプトに出ているか確認。

Q: WSL2 と Windows ネイティブ、 どちらで Django 開発する?
A: Linux 本番にデプロイするなら WSL2 推奨。 ファイル監視・パス処理・gunicorn 等が本番と同等で動きます。

編集
Post Share
子ページ

子ページはありません

同階層のページ
  1. インストール方法(Windows)
  2. インストール方法(Linux/Mac)
  3. プロジェクトの作成方法(Windows)
  4. プロジェクトの作成方法(Mac)
  5. アプリケーションの作成方法
  6. 開発用サーバー(Windows)
  7. 開発用サーバー(Mac)