2015-06-02 7 views
2

В моем проекте (на основе Django) мне нужна специальная опция для включения/отключения некоторых функций в моем представлении.Настройки Django

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

Как я знаю, если я установить эту переменную в settings.py я бы не импортировать его из settings.py, потому что settings.py не является модулем, и мне нужно импорта settings.py в целом объект. Что еще я могу использовать в качестве переменной настройки в Django?

+0

Что вы имеете в виду? Вы пробовали 'import myapp.settings'? – Wtower

+0

Можете ли вы объяснить, какую функциональность, сколько вы пробовали? – itzMEonTV

+0

@Wtower проблема в том, что я не могу: из myapp.settings импортировать FLAG. – paus

ответ

1

Вы можете использовать request.session. Он хранит значения в качестве словаря

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

Когда вы закончите, используя эту переменную, просто удалите его с помощью

del request.session['flag'] 
4

Вы можете импортировать, как вы хотите, как

from django.conf import settings 

settings.py

FUNCTIONALITY_A = True 

Тогда в views.py

If settings.FUNCTIONALITY_A == True 
    #do your stuff 

В противном случае

from yourproject import settings 
1

Создание пользовательской настройки YOUR_SETTING, место в settings.py. В своих взглядах вы можете использовать настройки как этот

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

More info.

Смежные вопросы