使用Waffle Switches有条件地更改项目settings.py中的设置是否有任何警告?
例如,是否需要重新启动Django进程才能使更改生效?
如果需要重新启动 ,那么自动执行此操作的最佳方法是什么?
答案 0 :(得分:4)
我创造了华夫饼干。它不会替换设置,也不会以constance设计的相同方式与它们进行交互。
有些东西既可以是设置,也可以是华夫饼干开关,但这是两种不同的方法。
from django.conf import settings
def my_function():
if settings.SOME_SETTING:
# do one thing
VS
from waffle import switch_is_active
def my_function():
if switch_is_active('my-switch'):
# do something
最大的区别在于,如果更改设置,则必须重新启动Django进程(除非在cron作业或管理命令中使用该设置或其他不是Web请求的设置)。如果更换华夫饼机开关,则无需重新启动任何东西。
而且,为了完整起见,问题的最后部分:waffle flags需要一个请求,因为它们有许多活动标准,但样本和开关却没有。它们的价值不取决于请求。