PythonのDjangoとは?特徴から使い方まで徹底解説

PythonでWEBアプリケーション開発を効率化するなら、Djangoフレームワークが最適な選択です。Instagram、Dropboxなど世界的企業で採用されるDjangoは、「バッテリー同梱」思想により認証システムや管理画面が標準搭載されています。MVTアーキテクチャとORM機能で保守性の高い開発を実現し、セキュリティ対策も万全です。
本記事では、Djangoの特徴やFlaskとの違い、プロジェクト作成から環境構築まで実践的な手順を詳しく解説します。効率的なWEB開発を始めましょう。
Contents
PythonのDjangoとは
DjangoはWEBアプリケーションフレームワークです。
フルスタックフレームワークと呼ばれ、開発に必要な機能が最初から揃っています。
オープンソースで無料利用でき、Instagramなど大手サービスでも採用されています。
Djangoの特徴
MVTアーキテクチャを採用しデータベース操作、画面表示、テンプレート処理を分離し、保守しやすいコードを実現できます。
管理画面やセキュリティ対策も標準で組み込まれています。
Flaskとの違い
Djangoが大規模開発に向くのに対して、Flaskはシンプルな機能で小規模開発に適しています。
プロジェクト規模に応じて適切なフレームワークを選択してください。
Djangoの魅力やメリット
Djangoは認証システムや管理画面など必要な機能があらかじめ組み込まれ、迅速な開発が可能です。
セキュリティ機能も標準搭載され、Instagram、Dropboxなど多くの企業で採用されています。
Djangoの使い方
Djangoでアプリケーション開発をおこなう際は、プロジェクト作成→アプリケーション追加→管理画面の設定、そして各種設定作業を順序立てて進めます。
プロジェクトを作成する
Djangoの開発は、まずプロジェクトを作成します。
# プロジェクト「myproject」を作成
django-admin startproject myproject
# 以下のようなディレクトリ構造が生成されます。
myproject/
├── manage.py
└── myproject/
├── __init__.py
├── asgi.py
├── settings.py
├── urls.py
└── wsgi.py
各種設定をおこなう、settings.pyファイルは特に重要です。
アプリを作成する
Djangoでは機能ごとにアプリケーションを分割して開発します。
下記のコマンドでアプリを作成できます。
# 以降はプロジェクトのディレクトリ内で作業します。
cd myproject
# 「blog」アプリを作成します。
python manage.py startapp blog
# 作成されたアプリケーションは以下の構造を持ちます。
blog/
├── __init__.py
├── admin.py
├── apps.py
├── migrations/
│ └── __init__.py
├── models.py
├── tests.py
└── views.py
作成後はsettings.pyのINSTALLED_APPSに追加する必要があります。
INSTALLED_APPS = [
‘django.contrib.admin’,
‘django.contrib.auth’,
‘django.contrib.contenttypes’,
‘django.contrib.sessions’,
‘django.contrib.messages’,
‘django.contrib.staticfiles’,
# 「blog」アプリのConfigクラスを追記
‘blog.apps.BlogConfig’,
]
管理画面について
管理画面は、データベースを簡単に管理できる機能です。
# データベースの初期化をおこないます。
python manage.py migrate
管理者(スーパーユーザー)を作成します。
python manage.py createsuperuser
Username (leave blank to use ‘rstone’): ユーザー名を入力
Email address: メールアドレスを入力
Password: パスワードを入力
Password (again): もう一度パスワードを入力
Superuser created successfully.
# admin.pyファイルで管理画面で操作するモデルを登録します。
from django.contrib import admin
from .models import Article # Articleモデルの例
admin.site.register(Article)
# 開発サーバーの起動
python manage.py runserver
# 起動したら http://127.0.0.1:8000/ を開いてください。
/admin/ にアクセスすると、データの操作をおこなえます。
開発環境の準備について
Djangoを使った開発を始めるのに必要な環境構築を見ていきましょう。
Pythonのインストール確認
コマンドプロンプトで以下を実行してPythonがインストール済みか確認します。
python –version
# Python 3.8以上が推奨です。
未導入の場合は以下でインストールできます。
# Windows 環境
winget install Python.Python.3.12
# macOS (Homebrew環境)
brew install python@3.12
pipのバージョンも確認しておきます。
# パッケージ管理ツールpipのバージョンを表示
pip –version
仮想環境の作成とDjangoのインストール
プロジェクト用フォルダを作成し、仮想環境を構築します。
mkdir django_project
cd django_project
# 仮想環境「django_env」を作成します。
python -m venv django_env
## 作成した仮想環境をアクティベートします。
# Windowsの場合
django_env\Scripts\activate
# macOSの場合
source django_env/bin/activate
仮想環境をアクティブにしてからDjangoをインストールします。
pip install django
インストール後、バージョンを表示できます。
# django-adminのバージョンを表示
django-admin –version
まとめ
DjangoはPythonでWEBアプリを効率的に開発できるフレームワークです。MVT構造、ORM、管理画面など豊富な機能で開発を加速し、世界的企業でも信頼されています。
本記事の手順を参考に、まずは仮想環境の構築から始めてDjangoの世界に踏み出してください。