0

使用Waffle Switches有条件地更改我项目的 settings.py 中的设置是否有任何注意事项?
例如,是否需要重新启动 Django 进程才能使更改生效?
如果需要重新启动,自动执行此操作的最佳方法什么?

4

1 回答 1

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

最大的区别在于,如果您更改设置,则必须重新启动 Django 进程(除非该设置用于 cron 作业或管理命令或其他不是 Web 请求的东西)。如果您更改华夫饼开关,则无需重新启动任何东西。

而且,为了完整起见,对于您问题的最后一部分:华夫饼标志需要一个请求,因为它们有许多活动标准,但样本和开关没有。它们的价值不取决于请求。

于 2013-10-09T16:52:18.567 回答