Refs #1286 -- Show variations in list of quotas

This commit is contained in:
Raphael Michel
2019-05-16 11:35:19 +02:00
parent 45e98546d6
commit e1992bb99f
2 changed files with 16 additions and 3 deletions

View File

@@ -60,7 +60,13 @@
<td>
<ul>
{% for item in q.items.all %}
<li><a href="{% url "control:event.item" organizer=request.event.organizer.slug event=request.event.slug item=item.id %}">{{ item }}</a></li>
{% if not item.has_variations %}
<li><a href="{% url "control:event.item" organizer=request.event.organizer.slug event=request.event.slug item=item.id %}">{{ item }}</a></li>
{% endif %}
{% endfor %}
{% for v in q.variations.all %}
<li><a href="{% url "control:event.item.variations" organizer=request.event.organizer.slug event=request.event.slug item=v.item.id %}">
{{ v.item }} {{ v }}</a></li>
{% endfor %}
</ul>
</td>

View File

@@ -3,7 +3,7 @@ import json
from django.contrib import messages
from django.core.files import File
from django.db import transaction
from django.db.models import Count, F, Q
from django.db.models import Count, F, Prefetch, Q
from django.forms.models import inlineformset_factory
from django.http import Http404, HttpResponseRedirect
from django.shortcuts import redirect
@@ -565,7 +565,14 @@ class QuotaList(PaginationMixin, ListView):
def get_queryset(self):
qs = Quota.objects.filter(
event=self.request.event
).prefetch_related("items")
).prefetch_related(
Prefetch(
"items",
queryset=Item.objects.annotate(has_variations=Count('variations'))
),
"variations",
"variations__item"
)
if self.request.GET.get("subevent", "") != "":
s = self.request.GET.get("subevent", "")
qs = qs.filter(subevent_id=s)