Я работаю над проектом, в котором мы используем переключатели функций, чтобы скрыть функции, пока они не будут готовы к выпуску.
Шаблон, который мы использовали, состоит в том, чтобы просто не маршрутизировать определенные конечные точки, если функция выключена. Т.е. в urls.py
мы включаем URL-адреса в urlconf
только если переключатель включен. Но это означает, что переключатели функций имеют эффект только при перезапуске сервера. Мы хотели бы иметь возможность динамически включать и выключать функции на работающем сервере. Кажется, что urlconf
анализируется только во время запуска, поэтому изменения в нем не отражаются без перезагрузки.
Я попытался создать промежуточное ПО для блокировки определенных URL-адресов на основе значения переключателя функции и это работает, но не очень хорошо работает с Swagger
документами, которые я также хотел бы отразить в состоянии переключателей функций.
В целом, я чувствую, что борюсь с системой, которая обычно признак того, что я не подхожу к нему под прямым углом.
Итак, как люди советуют мне использовать функцию динамических переключателей c в Django?
РЕДАКТИРОВАТЬ: Я хотел сказать, что я просмотрел несколько постов, таких как этот: Django dynamici c urlpatterns но на самом деле не было никакого разрешения.
Некоторые даже старше в постах говорится о принудительном обновлении sh из urlconf
путем перезагрузки модуля, и я попробовал это, но, хотя я вижу, что код снова выполняется, похоже, он не влияет на URL-адреса. Как будто они кешируются, но я не могу найти способ очистить этот кеш (все посты, которые я нашел по этой теме, устарели)