2013-10-08 3 views
0

Есть ли какие-либо оговорки с использованием Waffle Switches, чтобы условно изменить настройки в настройках моего проекта.py?
Например, требуется перезапустить процесс Django, чтобы изменения вступили в силу?
И если требуется перезагрузка , то требуется, что это лучший способ сделать это автоматически?Использование Waffle для переключения settings.py

+0

Какую настройку вы хотите изменить? – tobych

ответ

4

Я создал Вафли. Он не заменяет настройки или не взаимодействует с ними таким же образом, как и для constance.

Есть вещи, которые могут быть либо настройкой, либо вафельным переключателем, но это два разных способа приблизиться к ней.

from django.conf import settings 
def my_function(): 
    if settings.SOME_SETTING: 
     # do one thing 

против

from waffle import switch_is_active 
def my_function(): 
    if switch_is_active('my-switch'): 
     # do something 

Большая разница в том, что если вы измените настройки, вам придется перезапустить процесс Джанго (если установка не используется в хрон или команды управления или что-то иначе это не веб-запрос). Если вы измените переключатель вафель, вам не нужно ничего перезапускать.

И для полной части последней части вашего вопроса: вафли flags требуют запроса, потому что у них много критериев для того, чтобы быть активным, но образцов и переключателей нет. Их ценность не зависит от запроса.

+0

Я понимаю разницу между использованием 'settings' и использованием' waffle', я специально хотел использовать 'waffle' для изменения значений в файлах' settings'. Например, если для новой функции «waffle switch» требуется другой БД, который задан в settings.py. Поэтому это отвечает на мой первый вопрос, что это возможно, но требует перезагрузки. BTW, приятное приложение! – nak

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