我有一个Django API正在PythonAnywhere中部署,为此,我不能让settings.py中的默认选项为True:
settings.py
True
DEBUG=True
不过,该应用程序也有一个使用drf-yasg库的Swagger页面。要使其在本地工作,我必须将调试选项设置为True。但是维护起来很麻烦,而且我经常错误地将它作为True提交给存储库。是否有任何方法可以管理此选项,以便每当我在本地运行时,它会自动将其设置为True,但默认情况下将其保留为False?
False
DEBUG=False
wd2eg0qa1#
为此,我使用python-decouple包。为了区分生产和开发环境,您可以创建一个.env文件,其中包含所有与生产相关的变量。在settings.py中,当检索配置参数时,将每个default选项保留为开发中使用的选项。因此,当.env文件不存在时,将设置默认值。
python-decouple
.env
default
from decouple import config DEBUG = config('YOUR_ENV_VAR_DEBUG', default=True, cast=bool)
有关更多实际使用案例,请参考documentation。
1条答案
按热度按时间wd2eg0qa1#
为此,我使用
python-decouple
包。为了区分生产和开发环境,您可以创建一个.env
文件,其中包含所有与生产相关的变量。在settings.py
中,当检索配置参数时,将每个default
选项保留为开发中使用的选项。因此,当.env
文件不存在时,将设置默认值。有关更多实际使用案例,请参考documentation。