Сопоставление данных из двух функций в контексте django?

Я борюсь с сопоставлением контекстов в моем проекте django. Я хочу вставить кверисет .annotate(), идеально в просто переменную set.

Я знаю, что это звучит странно, но это лучшее, как я могу это описать.

Я попробовал использовать .filter(), так как это имеет логический смысл для меня, но это не совсем работает.

my views.py

from django.shortcuts import render
from django.db.models import Count
from django.db.models import Sum
from .models import Offer_general
from .models import Offer_details
import datetime


# Create your views here.
def offer_general_list(request):
    #queryset = Offer_general.objects.filter(status=1).order_by('-id')
    context = {}
    context["data"] = Offer_general.objects.filter(status=1).order_by('-id')#stuff from Offer_general
    context["test"] = Offer_details.objects.values('fk_offer_general_id').annotate(sum=Sum('fk_offer_general_id'))
    return render(request, "index_offers.html", context)


def offer_general_details(request):
    context = {}
    context["data"] = Offer_details.objects.all()
    return render(request, "offer_detail.html", context)

models.py

from django.db import models
from django.contrib.auth.models import User
from django.db.models import Count

STATUS = (
    (0,"Inactive"),
    (1,"Active")
)

class Offer_type(models.Model):
    type = models.TextField()

    class Meta:
        ordering = ['-type']

    def __str__(self):
        return self.type

class Offer_general(models.Model):
    offer_name = models.CharField(max_length=200, unique=True)
    slug = models.SlugField(max_length=200, unique=True)
    status = models.IntegerField(choices=STATUS, default=0)
    type = models.ForeignKey(Offer_type, on_delete= models.PROTECT)

    class Meta:
        ordering = ['-id']

    def __str__(self):
        return self.offer_name

class Offer_localization(models.Model):
    localization = models.TextField()

    class Meta:
        ordering = ['-localization']

    def __str__(self):
        return self.localization

class Offer_details(models.Model):
    slug = models.SlugField(max_length=200, unique=True)
    localization = models.ForeignKey(Offer_localization, on_delete= models.PROTECT, default="Opole")
    fk_offer_general_id = models.ForeignKey(Offer_general, on_delete= models.PROTECT)
    updated_on = models.DateTimeField(auto_now= True)
    content = models.TextField()
    requirements = models.TextField()
    created_on = models.DateTimeField(auto_now_add=True)
    status = models.IntegerField(choices=STATUS, default=0)

    class Meta:
        ordering = ['-id']

    def __str__(self):
        return self.slug

TL;DR, я хочу, чтобы sum(), возвращаемая в context["test"], была красиво зацикливаемой, с id равным fk_offer_general_id.

Проблема показана на следующем изображении: (У меня нет репутации для размещения изображения :() https://ibb.co/XtpkKpC

Вернуться на верх