【Python】venvで仮想環境を作成し、Djangoをインストールする方法を徹底解説(mac)

Django

こんにちは、らるちゃんです。
Djangoでアプリ開発をしてみようと思ったので、開発環境の作成手順について1からまとめます。

DjangoはPythonで作られた強力なWebフレームワークですが、開発環境を適切に整えることでその魅力を最大限に活かすことができます。

本記事では、macOS環境でvenvを使って仮想環境を作成し、Djangoをインストールする手順を詳しく解説します。

Djangoのドキュメントを参考にしています。


1. 前提・開発環境

まず、macOSにPythonがインストールされているか確認しましょう。
以下のコマンドを実行して、バージョンが表示されるか、確認します。

$ python3 --version

pip/virtualenvもインストールされてることを前提とします。
インストール方法は、他のネット記事等を参考にして下さい(とても簡単)。

私の開発環境は、以下に記載します。

・OS:macOS Catalina
・シェル:bash
・Python:3.12

2. venvで仮想環境を作成する

仮想環境を作成することで、プロジェクトごとに異なる依存関係を管理できます。
Python を使った開発は、用途に応じて環境を作成し、切り替えて使用することをお勧めします。

それでは、以下の手順で作成しましょう。

(1)仮想環境用のディレクトリを作成します。今回は、DjangoTestを作成します。

$ mkdir DjangoTest
$ cd DjangoTest

(2)仮想環境を作成します。

以下のコマンドを実行し、プロジェクト内に指定した仮想環境名のフォルダが作成されます。
自由につけて良いですが、迷ったらpython3 -m venv venvで大丈夫です。

$ python3 -m venv [任意の仮想環境名]

(3)仮想環境を有効化します。有効化されると、ターミナルのプロンプトに(venv)が表示されます。

$ source venv/bin/activate

まだ、実行しませんが、仮想環境を終了したい場合は以下のコマンドを実行します。
終了した後に、再び有効化する場合は、DjangoTestディレクトリに移動し、(3)のコマンドをもう一度実行します。

$ deactivate

3. Djangoのインストール

続いて、Djangoのインストールを行います。
仮想環境が有効化された状態で、pipを使ってDjangoをインストールします。

$ pip3 install django

インストールが成功したか確認するには、以下のコマンドを実行します。

$ python3 -m django --version

これでDjangoのバージョンが表示されれば、インストールは完了です。


4. Djangoプロジェクトの作成

Djangoをインストールした後、プロジェクトを作成してみましょう。

(1)プロジェクトを作成します。

$ django-admin startproject myproject

(2)作成されたディレクトリに移動します。

$ cd myproject

(3)開発用サーバーを起動します。

$ python3 manage.py runserver

(4)ブラウザで http://127.0.0.1:8000/ にアクセスすると、Djangoの初期画面が表示されます。


5. 開発環境用のDBについて

Djangoのデータベースについてですが、サードパーティから提供されているものを除くと、公式には以下のデータベースがサポートされています。

開発環境用のデータベースは、本番環境で利用するデータベースに合わせたものを選定することは言うまでもありませんが、

実験用にDjangoを動かしてみたり、プロジェクトが小規模なもの、あるいは本番環境にデプロイしないものなら、通常は SQLiteが推奨されます。

理由は単純で、SQLiteはサーバーを作成する必要がないためです。DBサーバーの構築し接続設定をすると言う手間が省けると言う点はメリットになります。

●SQLite 以外のデータベースの場合

データベースとして SQLite を使っていない場合、 USER や PASSWORD そして HOST などの追加設定を加える必要があります。詳細については DATABASES のリファレンスドキュメントを参照してください。

6. まとめ

本記事では、macOSでvenvを使用して仮想環境を構築し、Djangoをインストールする手順を解説しました。仮想環境を使用することで、他のプロジェクトと依存関係が干渉する心配なくDjangoの開発を進めることができます。

コメント

タイトルとURLをコピーしました