fix volforce rating

This commit is contained in:
Walter 2025-02-24 21:52:25 +01:00
parent bcf20eb7e6
commit 54a901bbd1

View File

@ -1,4 +1,4 @@
from django.db.models import F, BooleanField, IntegerField, ExpressionWrapper, Count, Sum, DecimalField from django.db.models import F, BooleanField, IntegerField, ExpressionWrapper, Count, Sum, DecimalField, Q
from django.db.models.functions import Cast from django.db.models.functions import Cast
from django.shortcuts import render from django.shortcuts import render
from django.views.generic import TemplateView from django.views.generic import TemplateView
@ -48,8 +48,8 @@ class LeaderboardGlobalView(TemplateView):
def get(self, request, *args, **kwargs): def get(self, request, *args, **kwargs):
# Get top 100 best players # Get top 100 best players
players = Player.objects.annotate( players = Player.objects.annotate(
clears=Count(F("bloonsa_level_scores__clear")), clears=Count("bloonsa_level_scores", filter=Q(bloonsa_level_scores__clear=True)),
golds=Count(F("bloonsa_level_scores__dart_glitch_ever")) golds=Count("bloonsa_level_scores", filter=Q(bloonsa_level_scores__dart_glitch_ever=True))
).annotate( ).annotate(
volforce=F("clears") + F("golds") volforce=F("clears") + F("golds")
).order_by("-volforce")[:10] ).order_by("-volforce")[:10]