Кэшируйте представление django, которое имеет параметры URL

гедит (гном) или кейт (кде) + муравей.

Люди, которые предлагают emacs, забывают, что, хотя это отличная ОС, ей действительно нужен приличный текстовый редактор. Изучение vi, хотя и полезно, если вам действительно нужно использовать редактор cli, - это такая же боль в заднице, как и изучение IDE. Как kate, так и gedit примерно так же трудно изучить, как notepad.exe, за исключением того, что они поддерживают подсветку синтаксиса.

Ant легче изучать, чем создавать IMO (возможно, из-за того, как работает компиляция c / c ++), но на его написание требуется больше времени (это xml). Я думаю, вы могли бы использовать make для компиляции Java. Мне сказали, что maven2 заменяет муравья, но никогда не использовал его. Если это так, вы можете использовать его вместо муравья.

Что касается слияния svn, существует множество инструментов, начиная от diff (cli, создает файлы различий) до meld Python GUI, который предоставляет вам параллельный diff. На окнах tortoisesvn поставляется с tortoisemerge, который выполняет 2-х и 3-х стороннее графическое отображение.

12
задан Tristan Brotherton 19 October 2009 в 18:41
поделиться

3 ответа

Правильно, изменение заголовков - неправильное решение, оно используется, когда вы хотите кэшировать на основе заголовков клиентских запросов, таких как пользовательский агент и т. Д.

Вам нужно будет использовать низкоуровневый API или кэширование фрагментов шаблона . На самом деле это зависит от ваших представлений.

С низкоуровневым API это выглядит примерно так:

from django.core.cache import cache

def get_user(request):
    user_id = request.GET.get("user_id")
    user = cache.get("user_id_%s"%user_id)
    if user is None:
        user = User.objects.get(pk=user_id)
        cache.set("user_id_%s"%user_id, user, 10*60) # 10 minutes
    ...
    ..
    .
17
ответ дан 2 December 2019 в 04:43
поделиться

немного поздно, но для этого вы можете использовать django-view-cache-utils .

0
ответ дан 2 December 2019 в 04:43
поделиться

Да, вы можете использовать django-view-cache-utils, вот код для вашего случая:

from view_cache_utils import cache_page_with_prefix
from django.utils.hashcompat import md5_constructor
...
@cache_page_with_prefix(60*15, lambda request: md5_constructor(request.get_full_path()).hexdigest())
def my_view(request):
    ...
8
ответ дан 2 December 2019 в 04:43
поделиться
Другие вопросы по тегам:

Похожие вопросы: