ホームページ >バックエンド開発 >Python チュートリアル >Django プロジェクトに .env をロードする方法
私は PHP の出身で、主に Laravel/Symfony を使用しています。最近、Django を使い始めました。環境変数が .env ファイル経由で提供される方法を再現したいと思いました。
開発サーバーを起動すると、心配することなく .env がロードされるようにしたいと考えていました。したがって、次の手順に従いました。
まず、仮想環境を作成し、プロジェクトをセットアップしました。
mkdir myproject cd myproject python3 -m venv ./venv echo vencv >> .gitignore pip install Django django-admin startproject mysite .
pip install python-dotenv
python-dotenv を使用すると、.env ファイルから環境変数を簡単にロードできます:
from dotenv import load_dotenv load_dotenv()
問題は、このコードを どこに 置くかです。 .env ファイルを毎回ロードするのは面倒な場合があります。前に述べたセットアップに基づいて、私のプロジェクトは次の構造を作成しました (わかりやすくするために一部のファイルは省略しています):
myproject/ ├── mysite/ │ ├── __init__.py │ ├── asgi.py │ ├── settings.py │ ├── urls.py │ └── wsgi.py └── .env
ご覧のとおり、mysite ディレクトリはモジュールとしてロードされます。すべての環境変数は .env ファイルに保存されます。それらをロードするために、コードを mysite/__init__.py ファイルに追加しました。
from dotenv import load_dotenv load_dotenv()
これにより、次を実行するたびにすべての環境変数が確実にロードされます。
python manage.py runserver
このアプローチの欠点は、.env ファイルに変更を加えた場合、環境変数を再ロードするためにサーバーを停止して再起動する必要があることです。
以上がDjango プロジェクトに .env をロードする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。