田舎社会人のいろいろ学習記

Python、英語、その他いろいろ

【django】dotenvで環境ファイルを利用する方法【Python】

f:id:vigilantPotato:20210810151507p:plain
python-dotenvモジュールを使用することで、プログラム内で使用するパスワード等の値を環境変数ファイルで管理し、スクリプトファイル側から読み込むことができる。

以下、Djangoで設定したmysqlのユーザー名とパスワードを環境ファイルから読み出す例を示す。mysqlの基本的な設定方法は以下の記事を参照。


【スポンサーリンク】


dotenvのインストールと.envファイルの準備

以下のコマンドを実行し、python-dotenvモジュールのインストールを行う。

pip install python-dotenv

次に、プロジェクトのフォルダ直下(manage.pyファイルがあるフォルダ内)に.envファイルを作成し、mysqlのユーザー名とパスワードを以下の様に記載して保存する。

SQL_USER=ユーザー名
SQL_PASSWORD=パスワード

[↑ 目次へ]


settings.pyの修正

settings.pyを修正し、以下の記述を追加する。python-dotenvモジュールを用いて先ほど作成した.envファイルを読み込むための記述を追加する。

from dotenv import load_dotenv
import os
load_dotenv()

次に、データベースのユーザーとパスワードを設定する箇所を、以下の通り変更する。

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'mysql_test',
        'USER': os.getenv('SQL_USER'),
        'PASSWORD': os.getenv('SQL_PASSWORD'),
    }
}

[↑ 目次へ]


【スポンサーリンク】