ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球
子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール
親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
| この記事の要点 |
|
前提
Python と Django が入っていることが前提です。まだの場合は Python3 のインストール (Windows10) と インストール方法(Windows) を先に済ませてください。
python --version
Python 3.12.6
1. フォルダと仮想環境を作る
cd C:\work
mkdir mysite
cd mysite
python -m venv .venv
.venv\Scripts\activate
成功するとプロンプトの先頭に (.venv) が付きます。
(.venv) C:\work\mysite>
| シェル | 有効化コマンド |
|---|---|
| コマンドプロンプト | .venv\Scripts\activate.bat |
| PowerShell | .venv\Scripts\Activate.ps1 |
| Git Bash | source .venv/Scripts/activate |
PowerShell で このシステムではスクリプトの実行が無効になっているため と出た場合は、そのウィンドウだけ許可します。
Set-ExecutionPolicy -Scope Process -ExecutionPolicy RemoteSigned
2. Django を入れる
python -m pip install --upgrade pip
python -m pip install django
python -m django --version
5.1.1
pip ではなく python -m pip と書くと、いま有効な Python に確実に入ります。複数バージョンが入っている環境での取り違えを防げます。
3. プロジェクトを作る
django-admin startproject config .
末尾のドットが重要です。付けるかどうかで出来上がる階層が変わります。
| コマンド | できるもの |
|---|---|
django-admin startproject config . | いまのフォルダ直下に manage.py と config/ |
django-admin startproject config | config/manage.py と config/config/(同名が二重になる) |
ドットを付けた場合の構成です。
C:\work\mysite\
├─ .venv\
├─ manage.py ← すべての操作の入口
└─ config\
├─ __init__.py
├─ settings.py ← 設定
├─ urls.py ← ルーティング
├─ asgi.py
└─ wsgi.py
プロジェクト名を config にしておくと、後からサイト名を変えても import 文を書き換えずに済みます。mysite のようにサービス名を付ける流儀もありますが、アプリ名と紛れやすくなります。
使えない名前
- ハイフンを含む名前(
my-site)— Python の識別子として不正 - 数字で始まる名前(
2nd) - Python の予約語(
classimporttestなど) - 既存モジュールと同じ名前(
djangositejson)— import が衝突する
4. 初期化して起動する
python manage.py migrate
python manage.py runserver
Starting development server at http://127.0.0.1:8000/
Quit the server with CTRL-BREAK.
ブラウザで http://127.0.0.1:8000/ を開き、ロケットのイラストと The install worked successfully! が出れば完了です。停止は Ctrl + C です。
migrate を実行すると db.sqlite3 が作られ、管理画面やセッションに必要なテーブルが用意されます。飛ばすと You have 18 unapplied migration(s) という警告が出ます。
5. 日本語向けの設定
# config/settings.py
LANGUAGE_CODE = "ja"
TIME_ZONE = "Asia/Tokyo"
USE_I18N = True
USE_TZ = True # DB には UTC で保存し、表示時に変換する
USE_TZ = True のまま運用するのが推奨です。datetime.now() ではなく django.utils.timezone.now() を使ってください。
6. 次にやること
python manage.py startapp myapp アプリを作る
python manage.py createsuperuser 管理者を作る
python -m pip freeze > requirements.txt 依存を固定する
プロジェクトは器で、実際の機能はアプリとして作ります。作成後は settings.py の INSTALLED_APPS への追加を忘れないでください(アプリケーションの作成方法)。
つまずいたとき
| 症状 | 対処 |
|---|---|
django-admin は認識されていません | 仮想環境が有効になっていない。python -m django startproject ... でも可 |
| スクリプトの実行が無効 | Set-ExecutionPolicy -Scope Process RemoteSigned |
Error: That port is already in use. | python manage.py runserver 8001 でポートを変える |
| 文字化けする | コマンドプロンプトで chcp 65001 を実行して UTF-8 にする |
| パスに日本語や空白がある | 不具合の原因になりやすい。C:\work のような英数字のパスに置く |
ModuleNotFoundError: No module named 'django' | 別の Python で実行している。python -c "import sys; print(sys.executable)" で確認 |
生成されたファイルの役割
| ファイル | 役割 | 編集頻度 |
|---|---|---|
manage.py | コマンドの入口(runserver migrate など) | 触らない |
config/settings.py | DB・アプリ一覧・テンプレート・静的ファイルの設定 | よく編集する |
config/urls.py | URL とビューの対応 | よく編集する |
config/wsgi.py | 本番で Web サーバーとつなぐ入口 | デプロイ時のみ |
config/asgi.py | 非同期・WebSocket 用の入口 | 必要になったら |
config/__init__.py | パッケージであることを示す空ファイル | 触らない |
settings.py で最初に見るところ
SECRET_KEY = "django-insecure-..." # 本番では環境変数から読む
DEBUG = True # 本番では必ず False
ALLOWED_HOSTS = [] # DEBUG=False にしたら必須
INSTALLED_APPS = [
"django.contrib.admin",
...
"myapp", # 作ったアプリはここに足す
]
DATABASES = {
"default": {
"ENGINE": "django.db.backends.sqlite3",
"NAME": BASE_DIR / "db.sqlite3",
}
}
STATIC_URL = "static/"
SECRET_KEY をリポジトリに入れないでください。セッションやパスワードリセットの署名に使われるため、漏れるとログインを偽装される可能性があります。
import os
SECRET_KEY = os.environ["DJANGO_SECRET_KEY"]
DEBUG = os.environ.get("DJANGO_DEBUG", "") == "1"
ALLOWED_HOSTS = os.environ.get("DJANGO_HOSTS", "127.0.0.1").split(",")
Git 管理に入れないもの
# .gitignore
.venv/
__pycache__/
*.pyc
db.sqlite3
.env
/media/
/staticfiles/
仮想環境のフォルダはサイズが大きく、OS ごとに中身が違うため共有しても意味がありません。共有するのは requirements.txt だけにします。詳細は git管理 を参照してください。
関連
- 環境構築とプロジェクト/アプリの作成 — 親カテゴリ
- インストール方法(Windows)
- プロジェクトの作成方法(Mac)
- アプリケーションの作成方法
- 開発用サーバー(Windows)
- 仮想環境の構築(WIndows)
ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球
子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール
親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
子ページはありません
- インストール方法(Windows)
- インストール方法(Linux/Mac)
- プロジェクトの作成方法(Windows)
- プロジェクトの作成方法(Mac)
- アプリケーションの作成方法
- 開発用サーバー(Windows)
- 開発用サーバー(Mac)
人気ページ
- 1 Eclipseで「サーバーに追加または除去できるリソースがありません。」の原因と対処法
- 2 tomcat の起動 / 停止ログと catalina.log・catalina.out の違い
- 3 JavaScript で base URL を取得する方法|window.location.origin
- 4 YouTube Data API v3 エラー一覧|403・400・404 の原因と対処
- 5 Laravel エラー一覧|500/Blade/DB 接続/ルーティングの代表エラー
- 6 3Dグラフィックスとは|モデリング/レンダリング/主要ソフトウェア (Blender / Maya)
- 7 Spring Frameworkのアノテーション一覧
- 8 【Spring】@Valueアノテーションとは
- 9 CATALINA_HOME の確認方法 (Linux / Mac)
- 10 【Spring】@Autowiredアノテーションとは
最近更新/作成されたページ
- 【django】ログイン 認証機能 2026-09-08 03:22:09
- MySQL ERROR 1063 Incorrect column specifier for column|原因と直し方 2026-09-08 03:11:09
- 【PHPエラー】Object of class stdClass could not be converted to string 2026-09-07 07:46:04
- Julia Genie ローカル開発サーバ起動完全ガイド 2026-09-07 07:46:04
- NetBeansでTomcatを起動する手順|サーバ登録・ポート・トラブル対処 2026-09-07 07:45:13
- Laravel 記事一覧55件|環境構築・ルーティング・DB・エラー対処 2026-09-07 07:45:13
- Spring Framework 記事一覧31件|DI・設定・例外の対処 2026-09-07 07:45:13
- Javaの定数 2026-09-07 07:45:13
- JPEG(.jpg/.jpeg)画像形式の完全ガイド — 仕様・マジックナンバー・他形式との比較・EXIF 2026-09-07 07:45:13
- hostnameコマンドの使い方|Windows・Linux・macOSでホスト名確認 2026-09-07 07:45:13
- Laravelルートグループ|prefix・middleware・nameで一括管理 2026-09-07 07:45:13
- Oracle DROP USERでユーザー削除|CASCADE・接続中ユーザーの対処 2026-09-07 07:45:13
- SQLとは|DDL・DMLとリレーショナルデータベース操作の基本 2026-09-07 07:45:13
- Linuxで複数ファイルの文字列を一括置換|find・sed・xargsの安全手順 2026-09-07 07:45:13
- Linux whichコマンドの使い方|絶対パス取得とtype・command -vの違い 2026-09-07 07:45:13
コメントを削除してもよろしいでしょうか?