From 1e6ae586fcbbde35aab07e5199c7d1f57d8ce773 Mon Sep 17 00:00:00 2001 From: zein Date: Mon, 3 Nov 2025 08:06:09 +0300 Subject: [PATCH] =?UTF-8?q?=D0=9E=D0=BF=D1=82=D0=B8=D0=BC=D0=B8=D0=B7?= =?UTF-8?q?=D0=B0=D1=86=D0=B8=D1=8F=3F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Hentai_manga_model/views.py | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) diff --git a/Hentai_manga_model/views.py b/Hentai_manga_model/views.py index 9cbcfa1..7d2312d 100644 --- a/Hentai_manga_model/views.py +++ b/Hentai_manga_model/views.py @@ -2,6 +2,7 @@ from django.shortcuts import render from django.core.paginator import Paginator from django.core.cache import cache from .models import manga_collection +import hashlib def manga_catalog(request): @@ -16,12 +17,30 @@ def manga_catalog(request): # Получаем выбранные теги selected_tags = request.GET.getlist('tags') + + + + + + query = {} + + query_key = hashlib.md5(str(query).encode()).hexdigest() + cache_key = f"count_{query_key}" + total_filtered = cache.get(cache_key) + + if total_filtered is None: + total_filtered = manga_collection.count_documents(query) + cache.set(cache_key, total_filtered, 60) # на 1 минуту + + + + """ query = {} if selected_tags: query['tags'] = {'$all': selected_tags} # Считаем количество для пагинации (можно тоже кешировать по хешу, но пока так) - total_filtered = manga_collection.count_documents(query) + total_filtered = manga_collection.count_documents(query)""" # Получаем номер страницы page_number = request.GET.get('page') or 1