Django 设置

Django settings

在我的项目(基于 Django)中,我需要一个自定义选项来切换 on/off 我认为的某些功能。

if (FLAG):
    .....
else:
    .....

据我所知,如果我在 settings.py 中设置这个变量,我就不会从 settings.py 导入它,因为 settings.py 不是模块,我需要导入 settings.py 作为一个整体对象。我还可以在 Django 中使用什么作为设置变量?

您可以随意导入

from django.conf import settings

settings.py

FUNCTIONALITY_A = True

然后在views.py

If settings.FUNCTIONALITY_A == True
    #do your stuff

否则

from yourproject import settings

创建自定义设置 YOUR_SETTING,放入 settings.py。在您的视图中,您可以使用这样的设置

from django.conf import settings
...
# in view
if settings.YOUR_SETTING:
    # do something

More info.

您可以使用 request.session。它将值存储为字典

request.session['flag'] = True    #or False as per your requirement
...
if (request.session['flag']):
    ...
else:
    ...

使用完此变量后,只需使用

将其删除
del request.session['flag']