стереть кеш шаблона - PullRequest
       36

стереть кеш шаблона

0 голосов
/ 20 сентября 2010

У меня есть приложение 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.)

1 Ответ

3 голосов
/ 20 сентября 2010

Получение режима в urls.py не будет работать. get будет выполнен только один раз, когда файл будет импортирован впервые.

Вместо этого база данных работает в функции просмотра.

...