Стереть шаблон кэш
-
04-10-2019 - |
Вопрос
У меня есть приложение Django, где пользователи могут выбрать между 2 модами интерфейса, этот режим влияет на некоторые страницы ... Для этих страниц я использую разные шаблоны
В URLS.PY у меня есть что-то подобное:
mode = Config.objects.get().mode
urlpatterns = patterns('',
url(r'^my_url/$', 'custom_view', {'template':'my_template.html', 'mode':mode} ),
)
Тогда мой взгляд что-то подобное:
@render_to()
def custom_view(request, template, mg=False, login=True):
if mode:
template = template + 'x' #I add an x to the template name to advice to django I that it should use the mode_2 template.
return {'TEMPLATE':template}
Моя проблема заключается в том, когда пользователь выбирает режим 2 (на моей странице пользовательской конфигурации), режим не меняется, пока сервер не будет перезапущен (либо Apache, ни Runserver.py не одинаково).
Я думаю, что это должно сделать что-то с кешем, но я не могу найти, как стереть этот кеш. (каждый раз config.mode изменен.)
Решение
Получение режима в URLS.PY не собирается работать. То get
будет выполняться только один раз, когда файл сначала импортируется.
Вместо этого база данных работает в функции просмотра.