【个人备忘录】这个我想用!Django2022年的最佳实践
关于这篇文章
调查了关于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
数据库设计的技巧
論理削除したユーザのログインIDを使えるようにするべきか? もう二度と使えないままでいいのか?
DBの寿命はアプリより長い! 長生きするDBに必要な設計とリファクタリングを実践から学ぶ
データベース設計の際に気をつけていること
https://security.stackexchange.com/questions/187426/how-to-get-better-iam-understanding