0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

右も左もわからずの自分がやってみて面白かったとか、備忘録とかにした方がいいと思った物を記事にしたものなります。もし、必要な方にいらっしゃったら、この記事が役に立てたら嬉しいと思います。


pythonのキャリアが浅すぎる私。
とりあえず、なんでもいいから最小規模のWebアプリを作りながら勉強と思っていた。
APサーバーからDBに繋ぐためのIDとPWなどをベタがきでソースに書いておいたが、
これをどこかに格納する必要があると思った。
pythonでは何で管理しているんだろう🧐

main.py
DB_HOST=localhost
DB_USER=riku
DB_PASSWORD=Biru-Nomitai

python-dotenvパッケージ

他のパッケージも多いと思うが、自分が取り入れてみたのは「python-dotenv」だ。

インストールはこちら。

terminal
pip install python-dotenv

Pythonではpython-dotenvを用いて「.env」ファイルを読み取ることができる。
.envファイルは「key=value」で定義する

DB_HOST=localhost
DB_ID=riku
DB_PW=Biru-Nomitai

上記で設定した後、Pythonでこれらのコードを取ることができる

main.py
from dotenv import load_dotenv
import os

load_dotenv()

db_host = os.getenv('DB_HOST')
db_id = os.getenv('DB_ID')
db_pw = os.getenv('DB_PW')

開発環境用と本番環境用、それぞれ分けて使おう

開発環境には「.env.dev」、本番環境では「env.prod」ファイルを作り、
環境に合わせてファイルを呼び出すことができる

main.py
from dotenv import load_dotenv
import os

env = os.getenv('ENV', 'dev')

load_dotenv(f'.env.{env}')

db_host = os.getenv('DB_HOST')
db_user = os.getenv('DB_USER')
db_password = os.getenv('DB_PASSWORD')
python .env
ENV=dev python dev_main.py
ENV=prod python prod_main.py

こうすることで環境により設定を分けることができる。

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?