Джанго Кэширование для блога - PullRequest
1 голос
/ 16 июля 2009

У меня есть блог, написанный на Django, и я начал использовать базовое промежуточное программное обеспечение для кэширования Django с серверной частью для кэширования файловой системы. К сожалению, это привело к кешированию двух вещей, которых не должно быть: ссылки администратора (например, «Редактировать этот пост») для зарегистрированных пользователей и предварительно заполненные формы комментариев на основе файлов cookie.

Чтобы обойти это, я начал использовать теги кеша шаблонов:

{% load cache %}

...admin links...
{% cache 500 blog_entry entry.id %}
...entry...
{% endcache %}
...comment form...

Но, похоже, вся страница все еще кэшировалась. Как настроить систему кэширования на только кэширование частей шаблона, которые вы явно указали?

Редактировать : Для комментариев, если кто-то комментирует блог, я сохраняю их имя, веб-сайт и адрес электронной почты в переменных сеанса. Если они вернутся на сайт, я предварительно заполню эти части формы этими данными. Но это означает, что система кэширования может кэшировать представление с предварительно заполненными данными, что нехорошо.

Ответы [ 2 ]

7 голосов
/ 18 июля 2009

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

5 голосов
/ 16 июля 2009

Добавьте это в ваши settings.py:

CACHE_MIDDLEWARE_ANONYMOUS_ONLY = True

Это должно решить проблему со ссылками на администраторов, я не совсем понимаю, какова ваша вторая проблема (предварительно заполненные комментарии)?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...