4
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

【個人的備忘録】これは使いたい!Djangoベストプラクティス2022

Last updated at Posted at 2022-12-08

この記事について

Djangoのベストプラクティスに関して調査して、これは使いたいと感じた事柄を記録として残します。

Django基本構成

実践的Djangoプロジェクトの設計―開発・運用が楽になる設定ファイルを書こう! アンチパターンとベストプラクティス

settings.pyを分割

  • project/config/settings/以下にdev.py, prod.py, stat.pyのように環境ごとの設定を分けて用意しておく。それぞれは大元となるbase.pyをimportして、必要な箇所のみ上書きして使用する。
  • 指定のsettingを使用したい場合は、環境変数DJANGO_SETTINGS_MODULEにファイルを指定する。

秘密鍵等も環境変数から読み込むようにする

  • 環境変数からsettingsへ読み込む際はdjango-environというライブラリを使用する。
  • 環境変数一覧はpipenvを使用して、.envファイルとして管理する。※ただし、実際の値はgitにあげないように注意する。あくまでテンプレートのみ。実際の値は手入力?

疑似SMTPサーバーに接続する

  • localhostにMailHogを立ててテストする。開発環境用。
  • テストする時は、python manage.py sendtestmail "message"
  • MailTrapというサービスも使えるよ。

メディアのアップロード

  • 基本的には開発環境ではS3やCloud Storage等へはアップロードしない。
  • する場合はdjango-storagesが使える

ログ

  • 最低限ローテションする
  • クラウドを利用している場合は、streamhandlerで吐き出して、cloud watch logsやcloud logging等に渡すのもアリ

Djangoのディレクトリテンプレート作成

  • cookiecutter-django

データベース設計のTips

4
4
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
4
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?