Почему кэширование Django вызывает нарушение CSRF и ошибочный рендеринг шаблона?

Я использую Django с Memcached в производстве, и, насколько я могу судить, система кэширования работает нормально, однако она вызывает определенные ошибки в моем приложении:

  • Всякий раз, когда форма отправляется, я получаю ошибку CSRF, потому что по какой-то неизвестной причине токен CSRF кэшируется.
  • Мои шаблоны также не отображаются правильно, например, когда пользователь вошел в систему, в моем шаблоне есть условие, которое проверяет, аутентифицирован ли пользователь, но при просмотре страницы шаблон не обновляется и по-прежнему показывает кешированная версия.

Если кто-нибудь знает, что здесь происходит и как я могу это исправить, пожалуйста, дайте мне знать.


person Jeroen van der Merwe    schedule 13.05.2020    source источник


Ответы (1)


Вам следует фрагментировать шаблон кеша, чтобы не кэшировать части, которые должны изменяться при каждом запросе

person iklinac    schedule 13.05.2020