venvコマンドでDjangoの開発環境を構築する

Python 3.3から追加されたvenvライブラリを使ってDjangoの開発環境を構築する手順を紹介します。
venvを使うことで、様々なプロジェクトで独立した開発環境を構築することができます。

まずは以下のコマンドを実行してください。

python -m venv my_env

するとmy_envというディレクトリができます。
作成した仮想環境を有効化するために、以下のコマンドを実行してください。

source my_env/bin/activate

次にpipを使ってDjangoをインストールします。

pip install "django==3.0.*"

Djangoは仮想環境内のmy_env/lib/python3.6/site-packagesディレクトリにインストールされます。

ここでターミナルでpythonコマンドを実行し、Djangoのバージョンを確認してみましょう。

% python
>>> import django
>>> django.get_version()
'3.0.5'

Djangoがインストールできていることがわかります。

Djangoプロジェクトを作成する

my_envディレクトリで以下のコマンドを実行します。

django-admin startproject mysite

すると以下のようなファイルやディレクトリが作成されます。

% tree mysite
mysite
├── manage.py
└── mysite
    ├── __init__.py
    ├── asgi.py
    ├── settings.py
    ├── urls.py
    └── wsgi.py

ちなみにdjango-admin startproject mysite .のように最後に「.」をつけた場合は、コマンドを実行したディレクトリ内にプロジェクトディレクトリが作成されます。

たとえば、tmpディレクトリ内で django-admin startproject mysite .を実行すると、以下のようなディレクトリ構成になります。

tmp
├── manage.py
└── mysite
    ├── __init__.py
    ├── asgi.py
    ├── settings.py
    ├── urls.py
    └── wsgi.py

mysite/mysiteのように、同じ名前のディレクトリが2つできるのが嫌な人は、プロジェクト用のディレクトリ内で「.」をつけてコマンドを実行するのがいいでしょう。

プロジェクトのセットアップを完了させるためには、最後にマイグレーションを実行します。
マイグレーションというのは、モデルとテーブルを紐付ける作業です。

なお、マイグレーションはsettings.pyのINSTALLED_APPSに並べられたアプリケーションに対して行われます。

python manage.py migrate

プロジェクトのセットアップが完了したら、開発用のサーバを起動して動作を確認します。

python manage.py runserver

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です