Browse Source

views | dopsání view výsledkovky čísla (zatím bez testování)

export_seznamu_prednasek
Anet 5 years ago
parent
commit
ad405c16f4
  1. 29
      seminar/views.py

29
seminar/views.py

@ -477,6 +477,7 @@ class VysledkyResitele(object):
body = [] body = []
self.rocnik = rocnik self.rocnik = rocnik
body_rocnik = body_resitele_v_rocniku(resitel, rocnik, cislo) body_rocnik = body_resitele_v_rocniku(resitel, rocnik, cislo)
poradi = 0
class CisloView(generic.DetailView): class CisloView(generic.DetailView):
model = Cislo model = Cislo
@ -515,15 +516,30 @@ class CisloView(generic.DetailView):
# získáme výsledky řešitele - součty přes číslo a ročník # získáme výsledky řešitele - součty přes číslo a ročník
vr = VysledkyResitele(ar, cislo, cislo.rocnik) vr = VysledkyResitele(ar, cislo, cislo.rocnik)
for hp in hlavni_problemy: for hp in hlavni_problemy:
ar.body.append(body_resitele_problemu_v_cisle(hp, resitel, cislo)) vr.body.append(body_resitele_problemu_v_cisle(hp, resitel, cislo))
radky_vysledkovky.append(vr) radky_vysledkovky.append(vr)
## TODO: ## TODO:
## vytvořit každému řešiteli objekt nesoucí jeho data # setřídíme řádky výsledkovky/objekty VysledkyResitele podle bodů
## setřídit tyto objekty podle bodů radky_vysledkovky.sort(key=lambda vr: vr.body_rocnik, reverse=True)
## vygenerovat sloupec s pořadím pomocí stejně zvané funkce
## předat to do kontextu # generujeme sloupec s pořadím pomocí stejně zvané funkce
# XXX pocty_bodu = [rv.body_rocnik for rv in radky_vysledkovky]
sloupec_poradi = sloupec_s_poradim(pocty_bodu)
# každému řádku výsledkovky přidáme jeho pořadí
i = 0
for rv in radky_vysledkovky:
rv.poradi = sloupec_poradi[i]
i = i + 1
# vytahané informace předáváme do kontextu
context['radky_vysledkovky'] = radky_vysledkovky
context['problemy'] = hlavni_problemy
# context['v_cisle_zadane'] = TODO
# context['resene_problemy'] = resene_problemy
return context
# problemy = sorted(set(r.problem for r in reseni), key=lambda x:(poradi_typu[x.typ], x.kod_v_rocniku())) # problemy = sorted(set(r.problem for r in reseni), key=lambda x:(poradi_typu[x.typ], x.kod_v_rocniku()))
# #setridi problemy podle typu a poradi zadani # #setridi problemy podle typu a poradi zadani
@ -562,7 +578,6 @@ class CisloView(generic.DetailView):
# context['problemy'] = problemy # context['problemy'] = problemy
# context['v_cisle_zadane'] = v_cisle_zadane # context['v_cisle_zadane'] = v_cisle_zadane
# context['resene_problemy'] = resene_problemy # context['resene_problemy'] = resene_problemy
return context
class ArchivTemataView(generic.ListView): class ArchivTemataView(generic.ListView):
model = Problem model = Problem

Loading…
Cancel
Save