Djangoアプリケーションの作成とデータベース接続方法
Djangoは、強力なWebアプリケーションフレームワークであり、Pythonで書かれています。データベースとの接続は、Djangoアプリケーションの構築において非常に重要な部分です。この記事では、Djangoアプリケーションを作成し、データベースに接続するための完全な手順を日本語で詳しく説明します。

1. Djangoのインストール
まず、Djangoをインストールする必要があります。以下のコマンドを使ってインストールします。
bashpip install django
インストールが完了したら、Djangoのバージョンを確認してみましょう。
bashdjango-admin --version
これで、Djangoが正しくインストールされていることが確認できます。
2. プロジェクトの作成
Djangoプロジェクトを作成するために、以下のコマンドを使用します。
bashdjango-admin startproject myproject
myproject
というディレクトリが作成され、その中に必要なファイルとディレクトリが生成されます。
ディレクトリ構造は次のようになります。
markdownmyproject/
manage.py
myproject/
__init__.py
settings.py
urls.py
wsgi.py
asgi.py
3. アプリケーションの作成
次に、Djangoアプリケーションを作成します。アプリケーションは、プロジェクト内で特定の機能を担当します。以下のコマンドでアプリケーションを作成します。
bashpython manage.py startapp myapp
これで、myapp
というディレクトリがプロジェクト内に作成されます。ディレクトリ構造は次のようになります。
markdownmyproject/
manage.py
myproject/
__init__.py
settings.py
urls.py
wsgi.py
asgi.py
myapp/
__init__.py
admin.py
apps.py
models.py
tests.py
views.py
4. データベースの設定
DjangoはデフォルトでSQLiteを使用しますが、MySQLやPostgreSQLなど他のデータベースを使用することもできます。まず、デフォルトのSQLiteデータベースを使用する設定を確認しましょう。
myproject/settings.py
を開き、DATABASES
セクションを確認します。
pythonDATABASES = {
'default': {
'ENGINE': 'django.db.backends.sqlite3',
'NAME': BASE_DIR / 'db.sqlite3',
}
}
これがデフォルトのSQLiteデータベース設定です。MySQLやPostgreSQLを使用したい場合は、適切なデータベースエンジンを設定します。例えば、PostgreSQLを使用する場合、次のように設定します。
pythonDATABASES = {
'default': {
'ENGINE': 'django.db.backends.postgresql',
'NAME': 'mydatabase',
'USER': 'myuser',
'PASSWORD': 'mypassword',
'HOST': 'localhost',
'PORT': '5432',
}
}
5. モデルの作成
Djangoでは、データベースのテーブルを「モデル」で定義します。myapp/models.py
でモデルを作成します。例えば、次のように簡単な「Article」モデルを作成します。
pythonfrom django.db import models
class Article(models.Model):
title = models.CharField(max_length=100)
content = models.TextField()
created_at = models.DateTimeField(auto_now_add=True)
def __str__(self):
return self.title
ここでは、Article
というモデルを作成しました。このモデルには、title
(タイトル)、content
(コンテンツ)、created_at
(作成日時)というフィールドがあります。
6. マイグレーションの実行
モデルを作成したら、次にそのモデルをデータベースに反映させるためのマイグレーションを行います。
まず、マイグレーションファイルを作成します。
bashpython manage.py makemigrations
次に、マイグレーションをデータベースに適用します。
bashpython manage.py migrate
これで、Article
モデルに対応するテーブルがデータベースに作成されました。
7. 管理画面の設定
Djangoは強力な管理画面を提供しており、簡単にデータベースの操作ができます。myapp/admin.py
を編集して、Article
モデルを管理画面に登録します。
pythonfrom django.contrib import admin
from .models import Article
admin.site.register(Article)
これで、Djangoの管理画面からArticle
モデルを操作できるようになります。
8. サーバーの起動と確認
すべてが設定されたら、Django開発サーバーを起動します。
bashpython manage.py runserver
開発サーバーが起動したら、ブラウザでhttp://127.0.0.1:8000/admin
にアクセスし、Djangoの管理画面にログインします(管理者ユーザーを作成していない場合は、python manage.py createsuperuser
コマンドで作成できます)。
ログイン後、Article
モデルを管理画面から操作できるようになります。
9. 結論
以上で、Djangoアプリケーションを作成し、データベースと接続する方法を説明しました。Djangoの強力な機能を活用することで、簡単にデータベースと連携したWebアプリケーションを構築できます。データベース接続を設定した後は、モデルの作成や管理画面のカスタマイズなど、さまざまな機能を追加していくことができます。
Djangoは多機能で柔軟性が高いため、初心者から上級者まで幅広く利用されています。ぜひ、Djangoを使って自分のWebアプリケーションを作成してみてください。