Zunächst eine Liste, wieviele Aufgaben in den jeweiligen Kategorien erledigt wurden und dann auch noch ein Ranking der fleißigsten Schülerinnen und Schüler und Lerngruppen.
Dazu erstelle ich jeweils eine Liste mit Dictionaries, das habe ich sogar alleine hinbekommen. Ich schaffe es aber noch nicht, diese ordentlich in einem Template zu integrieren.
Am einfachsten scheint die Liste mit den Kategorien:
Code: Alles auswählen
kategorien = Kategorie.objects.all().order_by('zeile')
kategorienliste = []
for kategorie in kategorien:
protokoll = Protokoll.objects.filter(kategorie = kategorie)
anzahl = {"kategorie": kategorie, "anzahl": protokoll.count()}
kategorienliste.append(anzahl)
print(kategorienliste[:3])
Code: Alles auswählen
[{'kategorie': <Kategorie: addieren>, 'anzahl': 41490}, {'kategorie': <Kategorie: subtrahieren>, 'anzahl': 25376}, {'kategorie': <Kategorie: verdoppeln>, 'anzahl': 28519}]
Code: Alles auswählen
{% for kategorie in kategorien %}
<tr>
{% for wert in kategorie.values %}
<td>
{{wert}}
</td>
{% endfor %}
<tr>
{% endfor %}
Und bei der Bestenliste habe ich noch mehr Einträge in jedem Dictionary. Pro Schülerinnen/Schüler ist dies gespeichert:
Code: Alles auswählen
schuelerliste = {"profil": s.id, "hjsumme": hjsumme, "sjsumme": sjsumme, "summe": summe}
