DjangoのenvironでDATABASESにOPTIONSを設定できない説【解決案をいただきました】

2021年9月22日

コメントにて解決案をいただきました!
公式ドキュメントには書いてないですが、GitHubを見るとquery parameterがOPTIONSに対応しているようです。
https://github.com/joke2k/django-environ/blob/main/environ/environ.py#L512

今回はDjangoのライブラリの一つであるdjango-environでDATABASESを設定したときにOPTIONSを設定できない可能性があるということについてお話ししていこうと思います。



DjangoのenvironでDATABASESにOPTIONSを設定できない説

タイトルの通りです。
Djangoのenvironを使用したときに、DATABSESにenv.db()を使って

のようにする方法がありますが、env.db()を使ったときにOPTIONSを設定できない可能性があります。

DATABASESを設定するときには、省略せずに下記のように書く必要がありそうです。

下記がdjango-environの公式ドキュメントのリンクになりますが、2020年8月現在「OPTIONS」などで検索をかけてもヒットしません。
https://django-environ.readthedocs.io/en/latest/index.html

Google検索でざっと探してみましたが、やはりOPTIONSを設定するためにはdjango-environの書き方ではなく一般的なDATABASESの定義の書き方を採用しなければならなそうです。
開発環境や本番環境でDBを切り替えたい場合は、Djangoのsettingsを分けるなどした方が良さそうですね。

もしenv.db()を使ったOPTIONSを設定する方法を知っていたらコメント欄にて教えていただければ幸いです。

終わりに

今回はDjangoのライブラリの一つであるdjango-environでDATABASESを設定したときにOPTIONSを設定できない可能性があるということについてお話しいたしました。

最後までお読みいただきありがとうございます。
ブログやTwitterでのシェアOKです。
コメントもお待ちしております。
誤植や勘違いなどございましたらコメント欄にて教えていただけると幸いです。

Youtubeチャンネル開設いたしました。
よろしければチャンネル登録お願いいたします。
https://www.youtube.com/channel/UC219XhmSRxmXltTy6COxSMw






Python

Posted by ちこ