Django - Цепочка запросов не возвращает ничего, когда должна

С этой точки зрения, когда предоставляется hashtag only, все в порядке, когда sortby - это что угодно, кроме обработанных случаев, все в порядке, когда есть hashtag И любой обработанный sortBy (например, Popular) ничего не возвращается, когда не должно, потому что Popular делает только сортировку, а тексты уже существуют, потому что они возвращаются, когда указан только hashtag, Вот вид:

@login_required
def get_texts(request):
    updated_texts = []
    sortBy = request.GET.get('sortBy')
    hashtag = request.GET.get('hashtag')
    search_query = request.GET.get('search', '').strip()

    base_query = HiveText.objects.all()

    if hashtag:
        base_query = base_query.filter(caption__icontains=f"#{hashtag}")

    if search_query:
        base_query = base_query.filter(caption__icontains=search_query)

    if sortBy == "Popular":
        texts = base_query.order_by("-like_counter", "-created_date")
    
    elif sortBy == "iMessages":
        texts = base_query.filter(capturetype="iMessages").order_by("-created_date")
    
    elif sortBy == "Dating Apps":
        texts = base_query.filter(capturetype="Dating Apps").order_by("-created_date")

    elif sortBy == "Social Media":
        texts = base_query.filter(capturetype="Social Media").order_by("-created_date")
    
    else:
        texts = base_query.order_by("-created_date")

    texts = texts[:20]

    for text in texts:
        try:
            image_filenames = json.loads(text.content)
        except json.JSONDecodeError:
            image_filenames = []
        
        updated_texts.append({
            'item': text,
            'image_filenames': image_filenames,
        })

    return render(
        request,
        "hive_text.html",
        {
            "texts": updated_texts,
        },
    )```
Вернуться на верх