【问题标题】:Is there a way to know if a website is in development mode or production mode in Django?有没有办法知道一个网站在 Django 中是处于开发模式还是生产模式?
【发布时间】:2021-04-04 09:23:22
【问题描述】:

在 Django 中,因为在开发和生产模式下,settings.py 文件必须有很大的不同
例如

开发:

DEBUG = true
...
ALLOWED_HOSTS = []
...
EMAIL_PAGE_DOMAIN = 'http://127.0.0.1:8000'

生产:

DEBUG = false
...
ALLOWED_HOSTS = ['example.com']
...
EMAIL_PAGE_DOMAIN = 'https://example.com'

我不知道是否有条件来检查应用程序是处于开发模式还是生产模式所以我不会对其进行硬编码。代码应根据其模式自动更改。 我想像这样的事情

if in_Development_Mode() == true:
   #code for devopmenet
else:
   #code for production

【问题讨论】:

    标签: python django settings production development-mode


    【解决方案1】:

    是的,有:

    from django.conf import settings
    
    if settings.DEBUG==True:
       #code for development
    else:
       #code for production
    
    

    https://docs.djangoproject.com/en/3.1/topics/settings/#using-settings-in-python-code

    【讨论】:

    • 谢谢。这样,每次将项目上传到服务器时,我都必须手动编写“DEBUG = False”,但我希望无论我是否编写“DEBUG = False”,条件都会自动改变
    • @Tai 如果你有不同的settings.py文件用于生产和开发,代码可能不需要修改。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-11-16
    • 2021-02-04
    • 1970-01-01
    • 2022-07-19
    • 2018-11-16
    • 1970-01-01
    • 2017-01-24
    相关资源
    最近更新 更多