Webアプリケーション開発

Djangoのインストールと設定

Django を起動する前に、当然ながら Python インタープリタをインストールする必要があります。

Django をインストールする方法は様々です。それでは、おすすめの方法を見ていきましょう。

パッケージマネージャ pip

Django のパッケージは、ほとんどの Python パッケージの中央リポジトリ – Package Index (PyPI) に置かれています。そして、このリポジトリからインストールするためには、pipパッケージマネージャが必要です。pipマネージャは、パッケージのダウンロードと管理を行うことができます。通常、pythonをインストールすると、pipマネージャもインストールされます。この場合、コマンドライン/ターミナルでpip3 -V(Vは大文字)を実行することで、マネージャのバージョンを確認することができます。

cb2013-02@cb2013-02s-MacBook-Air ~ % pip3 -V
pip 20.2.3 from /Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages/pip (python 3.9)

cb2013-02@cb2013-02s-MacBook-Air ~ % 

仮想環境の作成

仮想環境 (venv) は、Django の開発に不可欠な要素ではありません。しかし、1つのOS上で複数のPython仮想環境を構築できるため、利用することをお勧めします。仮想環境のおかげで、アプリケーションは他のPythonアプリケーションから独立して実行することができます。

原理的には、仮想環境無しで Django アプリケーションを実行することが可能です。この場合、すべての Django パッケージはグローバルにインストールされます。しかし、最初のアプリケーションを作成した後に、Django の新バージョンが出たらどうでしょう?もし、2つ目のプロジェクトで新しいバージョンの Django を使いたい場合、グローバルパッケージのインストールがあるため、古いバージョンを使っている1つ目のプロジェクトを更新する必要があります。パッケージ間の後方互換性は必ずしも尊重されないため、この場合、いくつかの追加アップグレード作業が必要になります。もし、2つ目のプロジェクトで旧バージョンを使うことになれば、新バージョンの潜在的な利点を失うことになる。そして、仮想環境を使うことで、まさにプロジェクトごとにパッケージを差別化することができるのです。

Pythonは仮想環境を扱うために組み込みのvenvモジュールを使用します。

そこで、仮想環境を作ってみましょう。まず、django プロジェクトのためのディレクトリを定義しましょう。例えば、~/djangoディレクトリとします。mkdirコマンドを使って~/djangoディレクトリを定義してみましょう。

cb2013-02@cb2013-02s-MacBook-Air ~ % mkdir ~/django
cb2013-02@cb2013-02s-MacBook-Air ~ % 

まず、ターミナル/コマンドラインで、cdコマンドを使ってこのディレクトリに移動してみましょう。

cb2013-02@cb2013-02s-MacBook-Air ~ % cd ~/django
cb2013-02@cb2013-02s-MacBook-Air django % 

次に、以下のコマンドを実行して、仮想環境を作成します。

cb2013-02@cb2013-02s-MacBook-Air django % python3 -m venv env

venvモジュールには環境名が与えられ、この場合は「env」と呼ばれます。仮想環境の名称には特に決まりはありません。コンソール出力の一例。

cb2013-02@cb2013-02s-MacBook-Air ~ % mkdir ~/django ディレクトリを定義する

cb2013-02@cb2013-02s-MacBook-Air ~ % cd ~/django 将来の仮想環境のフォルダーに移動する

cb2013-02@cb2013-02s-MacBook-Air django % python3 -m venv env 仮想環境の作成

これにより、現在のフォルダ(~/django)内に「env」サブフォルダが作成されます。

仮想環境の起動

仮想環境を利用するためには、起動する必要があります。そして、Django プロジェクトで作業するたびに、関連する仮想環境を起動する必要があります。例えば、上記で作成した環境(ディレクトリのenvフォルダにある)を起動します。アクティベーションの方法は、OSや使用するツールによって若干異なります。例えば、Windowsでは、コマンドラインとPowerShellを使うことができますが、両者には違いがあります。

Windowsでコマンドラインからアクティベーションを行う

OSがWindowsの場合、env/Scripts/フォルダに仮想環境を有効にするactivate.bat)というファイルがあります。つまり、Windowsの場合、コマンドラインで仮想環境を起動すると、次のようになります。

env\Scripts\activate.bat

PowerShellでWindowsのアクティベーションを行う

また、Windowsで作業する場合、env/Scripts/フォルダにactivate.ps1というファイルがあり、これも仮想環境を有効にしますが、PowerShellにのみ適用されます。しかし、PowerShellで作業する場合、デフォルトではこのシェルでスクリプトを適用することはできないので、注意してください。そのため、環境を起動する前に、現在のユーザーに対してパーミッションを設定する必要があります。そのため、PowerShellで仮想環境を有効にするには、次の2つのコマンドを実行する必要があります。

Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
env\Scripts\Activate.ps1

Linux、MacOSでの起動

Linux、MacOSの場合、アクティベーションは以下のコマンドで行います。

source env/bin/activate

以下では、MacOSのコマンドラインをベースにした例を挙げますが、それ以外の例は、PowerShellかコマンドラインか、WindowsかLinuxかMacOSかには関係なく、使用できます。いずれの場合も、アクティベーションに成功すると、カレントディレクトリの左側の括弧内に仮想環境名が表示されます。

cb2013-02@cb2013-02s-MacBook-Air ~ % mkdir ~/django

cb2013-02@cb2013-02s-MacBook-Air ~ % cd ~/django

cb2013-02@cb2013-02s-MacBook-Air django % python3 -m venv env

cb2013-02@cb2013-02s-MacBook-Air django % source env/bin/activate 仮想環境の起動

(env) cb2013-02@cb2013-02s-MacBook-Air django % 仮想環境起動

Djangoのインストール

Django の仮想インストール環境を有効にした後、コンソールで以下のコマンドを実行します。

(env) cb2013-02@cb2013-02s-MacBook-Air django % pip install django

最新版のDjangoがインストールされます。

Collecting django
  Downloading Django-4.1.1-py3-none-any.whl (8.1 MB)
     |████████████████████████████████| 8.1 MB 2.6 MB/s 
Collecting sqlparse>=0.2.2
  Downloading sqlparse-0.4.3-py3-none-any.whl (42 kB)
     |████████████████████████████████| 42 kB 14.5 MB/s 
Collecting asgiref<4,>=3.5.2
  Using cached asgiref-3.5.2-py3-none-any.whl (22 kB)
Installing collected packages: sqlparse, asgiref, django
Successfully installed asgiref-3.5.2 django-4.1.1 sqlparse-0.4.3

もし、特定のバージョンの Django に興味があるなら、インストール時に指定することができます。

(env) cb2013-02@cb2013-02s-MacBook-Air django % pip install django==4.0.0
Collecting django==4.0.0
  Using cached Django-4.0-py3-none-any.whl (8.0 MB)
Requirement already satisfied: asgiref<4,>=3.4.1 in ./env/lib/python3.9/site-packages (from django==4.0.0) (3.5.2)
Requirement already satisfied: sqlparse>=0.2.2 in ./env/lib/python3.9/site-packages (from django==4.0.0) (0.4.3)
Installing collected packages: django
  Attempting uninstall: django
    Found existing installation: Django 4.1.1
    Uninstalling Django-4.1.1:
      Successfully uninstalled Django-4.1.1
Successfully installed django-4.0

インストールの確認

すべてが正しくインストールされていることを確認するために、pythonインタプリタに移動します。そのためには、ターミナルで次のコマンドを入力します。

(env) cb2013-02@cb2013-02s-MacBook-Air django % python

そして、次の2つの指示を順番に実行してください。

>>> import django
>>> print(django.get_version())
4.1.1
>>> 

仮想環境の解除

仮想環境が完成したら、コマンドで停止させます。

(env) cb2013-02@cb2013-02s-MacBook-Air django % deactivate
cb2013-02@cb2013-02s-MacBook-Air django % 

この記事を書いた人

その他記事はこちら

オロゾママトフアイジギト

マネージャー / SE

キルギスから来ました。よろしくお願いします。

その他記事はこちら

関連記事