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