mam model o nazwie 'StoreItem' oraz model o nazwie 'QuoteItem'. Punkty QuoteItem na StoreItem.Django annotate - warunkowy Ilość
Próbuję opisywanie licznik, jak wiele elementów cytat wskazywać na przechowywania przedmiotów, ale warunki do zastosowania na elementach cytatu.
Próbowałem coś takiego:
items = items.annotate(
quote_count=Count(
Case(
When(quoteitem__lookup_date__in=this_week, then=1),
output_field=IntegerField()
)
)
)
'przedmioty' są queryset z StoreItems. "this_week" to lista dat reprezentujących ten tydzień (filtr, który staram się zastosować). Po ustawieniu daty rzeczy działają, chcę dodać więcej filtrów do tej liczby warunkowej, ale zacznijmy od tego.
Zresztą co ja coraz bardziej przypomina Boolean - jeśli Cytuje Produkty spełniające warunek nie istnieje, nie ma znaczenia ile mam, licznik będzie 1. indziej, będzie 0.
Wygląda podobnie jak w przypadku Count(Case())
sprawdzaj tylko, czy istnieje jakiś element, a jeśli tak, zwróć 1, podczas gdy ja chcę, aby iterował on nad wszystkimi elementami wycen, które wskazują na element sklepu i policz je, jeśli pasują do warunku (pojedynczo).
Jak to się stało?