|
|
@@ -4,7 +4,7 @@ from django.conf import settings
|
|
4
|
4
|
from django.contrib import messages
|
|
5
|
5
|
from django.core import serializers
|
|
6
|
6
|
from django.core.serializers.json import DjangoJSONEncoder
|
|
7
|
|
-from django.db.models import Q
|
|
|
7
|
+from django.db.models import Count, Q
|
|
8
|
8
|
from django.http import HttpResponseRedirect
|
|
9
|
9
|
from django.shortcuts import get_object_or_404, redirect
|
|
10
|
10
|
from django.urls import reverse
|
|
|
@@ -38,7 +38,9 @@ class OfferListView(ListView):
|
|
38
|
38
|
|
|
39
|
39
|
def get_queryset(self):
|
|
40
|
40
|
self.search_filters = []
|
|
41
|
|
- qs = self.model._default_manager.all()
|
|
|
41
|
+ qs = self.model._default_manager.annotate(
|
|
|
42
|
+ voucher_count=Count('vouchers')
|
|
|
43
|
+ ).select_related('benefit', 'condition')
|
|
42
|
44
|
qs = sort_queryset(qs, self.request, ['name', 'offer_type', 'start_datetime', 'end_datetime',
|
|
43
|
45
|
'num_applications', 'total_discount'])
|
|
44
|
46
|
|