【Web開発者におすすめ】PythonベースのWebアプリフレームワーク「Django」の始め方 | 千葉で集客ホームページ制作はティーエスフォート
コラム

【Web開発者におすすめ】PythonベースのWebアプリフレームワーク「Django」の始め方

【Web開発者におすすめ】PythonベースのWebアプリフレームワーク「Django」の始め方

今回の記事では、いくつか存在するWebアプリケーションフレームワークの中でDjangoについてご紹介します。

開発スピードが速くなっていく中でフレームワークの使用は必須となっていると言ってよいでしょう。

はじめに

今回の記事では、いくつか存在するWebアプリケーションフレームワークの中でDjangoについてご紹介します。

開発スピードが速くなっていく中でフレームワークの使用は必須となっていると言ってよいでしょう。

Pythonの特徴

Pythonは、注目を集めている人気のプログラミング言語です。

シンプルながら汎用性が高いので、多くのエンジニアに支持されています。

Pythonの最大の特徴は「コードの記述が短くて済む」という点です。

Djangoとは何か

DjangoはPython のWebアプリケーション開発用フレームワークです。

Python製のフレームワークはいくつか挙げられますが、Djangoは学習コストがやや高めな一方で、様々な機能を取り込めることが可能です。

Djangoのインストール

pipコマンドで、Djangoを簡単にインストールすることができます。Pythonではパッケージのインストールを簡単にするために、pipというパッケージ管理ツールが用意されています。


$ pip install django

プロジェクトの作成

Django をインストールできたら、まずDjango プロジェクトを準備します。

まずは簡単なアプリケーションを開発してみます。

プロジェクト作成用にtempというディレクトリを作成します。
$ mkdir temp

cdコマンドで作成したディレクトリへ移動します。
$ cd temp

Djangoをインストールすると、django-adminというコマンドを使用できるようになります。

django-admin は Django において管理者権限の処理を行うためのコマンドラインユーティリティです。django-adminに続いてサブコマンドを指定することで、様々なことが行えます。django-admin コマンドは、プロジェクトの雛形コードの生成などを行ないます。

以下のコマンドを実行してください。testがプロジェクトの名前です。

$ django-admin startproject test


プロジェクトのディレクトリに移動します。

$ cd test

次のコマンドを実行すると、indexというディレクトリが作成されます。

$ python manage.py startapp index

プロジェクトを作成すると各種ファイルが作成されます。
各ファイルの役割は以下のようになります。

__init__.py:[プロジェクト名]フォルダが Python のパッケージであることを証明する。
setting.py:Django プロジェクトの様々な設定を記述する。
manage.py:django-adminコマンドを使用する際のショートカットスクリプト。
urls.py:ルーティングについて記述する。
asgi.py、wsgi.py:非同期処理の実装などで使うファイル。

開発用サーバーを立ち上げる

プロジェクトが作成できたら開発用サーバを立ち上げてみます。
以下のコマンドを実行するとサーバーを起動することができます。

$ python3 manage.py runserver

コマンドを実行したら、http://127.0.0.1:8000/ よりトップページにアクセスできます。
トップページにアクセスできたら立ち上げ成功です。

データベースをセットアップする

データベースの設定をsetting.py の以下の部分で確認してみます。


DATABASES = {
'default': {
'ENGINE': 'django.db.backends.sqlite3',
'NAME': BASE_DIR / 'db.sqlite3',
}
}


ENGINEは、使用するデータベースのエンジンを指定します。
Django のデフォルトは、sqlite3 が指定されています。
NAMEは、参照するファイルを指定します。

Djangoではデータベースの作成や変更を加える際に、マイグレーションという機能を利用します。

マイグレーションはDjango がモデルの変更を保存する方法です。Django には、マイグレーションを開発者の代わりに実行し、自動でデータベーススキーマを管理するためのコマンドがあります。これは migrate と呼ばれるコマンドです。

Django ではデータベースの定義にどのような変更があったのかを表すマイグレーションファイルを生成します。

manage.py migrateコマンドを実行することで、これらのマイグレーションファイルをデータベースに反映させる事ができます。

$ python3 manage.py migrate

まとめ

今回の記事では、PythonベースのフレームワークであるDjangoを使った開発の始め方についてご紹介してきました。

Pythonの特徴である記述がシンプルである点を活かして、より短いコードで開発を進めていきたい方におすすめです。
ページ先頭へ