開発環境の準備
必要なもの
Djangoを始めるには、まずいくつかのツールをインストールする必要があります。
- Python: DjangoはPythonで動作するため、インストールが必要です。
- pip: Pythonのパッケージ管理ツールです。
- 仮想環境(推奨): プロジェクトごとに独立した環境を作成し、ライブラリが衝突しないようにします。
Pythonのインストール
- 公式サイトからPythonをダウンロードし、インストールします。
- ターミナルまたはコマンドプロンプトで以下のコマンドを実行してインストールを確認します:
python --version
正常にインストールされていれば、バージョン情報が表示されます。
pipのインストール確認
Pythonをインストールすると、通常pipも一緒にインストールされます。確認するには:
pip --version
仮想環境の作成
仮想環境を使うことで、他のプロジェクトに影響を与えずに開発できます。
- 仮想環境を作成するには、以下のコマンドを実行します:
python -m venv myenv
- 仮想環境を有効にします:
- Windows:
myenv\Scripts\activate
- macOS/Linux:
source myenv/bin/activate
- Windows:
Djangoのインストール
インストール手順
Djangoをインストールするには、仮想環境が有効な状態で次のコマンドを実行します:
pip install django
インストール確認
Djangoが正常にインストールされたかを確認するには:
django-admin --version
このコマンドでDjangoのバージョンが表示されれば、インストールは成功です。
Djangoプロジェクトの作成
プロジェクトのディレクトリ構成
Djangoプロジェクトは、複数のファイルとディレクトリで構成されます。はじめにプロジェクトの親ディレクトリを作成します。
プロジェクトの作成コマンド
- ターミナルで以下のコマンドを実行します:
django-admin startproject myproject
- プロジェクトのディレクトリに移動します:
cd myproject
プロジェクトの構成
以下のようなディレクトリ構成が自動で生成されます:
myproject/
manage.py
myproject/
__init__.py
settings.py
urls.py
asgi.py
wsgi.py
- manage.py: 開発サーバの起動やマイグレーションの実行などに使います。
- settings.py: プロジェクト全体の設定ファイルです。
- urls.py: URLルーティング(どのページにアクセスするとどのビューが表示されるか)を管理します。
- wsgi.py/asgi.py: WebサーバとDjangoを連携させるためのファイルです。
開発サーバの起動
開発サーバとは
Djangoには簡単に使える開発用サーバが用意されています。これを使えば、すぐにブラウザでアプリケーションの動作を確認できます。
開発サーバの起動手順
- プロジェクトのルートディレクトリ(
manage.py
がある場所)に移動します。 - 以下のコマンドを実行します:
python manage.py runserver
- ターミナルに表示されるアドレス(通常は
http://127.0.0.1:8000/
)にアクセスします。
動作確認
ブラウザでURLにアクセスすると、Djangoのデフォルトのウェルカムページが表示されれば成功です。
アプリケーションの作成
アプリケーションとは
Djangoでは、1つのプロジェクト内に複数のアプリケーションを作成できます。アプリケーションとは、特定の機能(例: ユーザー認証、ブログ記事管理など)を担当するモジュールのことです。
アプリケーションの作成コマンド
- プロジェクトのルートディレクトリにいる状態で、以下のコマンドを実行します:
python manage.py startapp myapp
アプリケーション構成
以下のようなディレクトリ構成が作成されます:
myapp/
__init__.py
admin.py
apps.py
models.py
tests.py
views.py
- models.py: データベースとの連携を定義します。
- views.py: リクエストを処理し、レスポンスを返すロジックを記述します。
- admin.py: 管理画面の設定を行います。
まとめ
Djangoのインストールからプロジェクト作成、開発サーバの起動までの基本的な流れを説明しました。これで、Webアプリケーションの開発を始める準備が整いました。