From 955dd60235793eabf0c1978e2861c4b026c9b999 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jon=C3=A1=C5=A1=20Havelka?= Date: Sun, 9 Feb 2025 22:46:29 +0100 Subject: [PATCH] =?UTF-8?q?Aktualizace=20p=C5=99id=C3=A1v=C3=A1tka=20?= =?UTF-8?q?=C3=BAloh=20a=20probl=C3=A9m=C5=AF=20(desetinn=C3=A1=20=C4=8D?= =?UTF-8?q?=C3=ADsla=20a=20=C4=8D=C3=ADslo=20m=C3=ADsto=20d=C3=ADlu)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- tvorba/views/docasne.py | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/tvorba/views/docasne.py b/tvorba/views/docasne.py index 453909ca..9b2a435f 100644 --- a/tvorba/views/docasne.py +++ b/tvorba/views/docasne.py @@ -27,7 +27,7 @@ class HromadnePridaniForm(Form): """ Formulář pro hromadné přidání úložek a problémů """ tema = CharField(label="Název tématu:") - dil = IntegerField(label="Díl:", min_value=1) + cislo = IntegerField(label="Číslo:", min_value=1) body = CharField(label="Počty bodů (0 pro problém) oddělené čárkami:") def clean_tema(self): @@ -41,7 +41,7 @@ class HromadnePridaniForm(Form): def clean_body(self): """ Kontrola, že `body` je seznam čísel """ try: - list(map(int, self.cleaned_data["body"].split(","))) + list(map(float, self.cleaned_data["body"].split(","))) except ValueError: raise ValidationError("Špatný formát bodů") return self.cleaned_data['body'] @@ -64,21 +64,21 @@ class HromadnePridaniView(FormView): """ Upravený Pavlův skript na hromadné přidání úložek a problémů. """ cd = form.cleaned_data tema = cd["tema"] - dil = cd["dil"] - body = list(map(int, cd["body"].split(","))) + cislo = cd["cislo"] + body = list(map(float, cd["body"].split(","))) t = Problem.objects.get(nazev__exact=tema, nadproblem=None) with transaction.atomic(): - pfx = f"{t.nazev}, díl {dil}, " + pfx = f"{t.nazev}, " for k, b in enumerate(body, 1): u = Uloha.objects.create( nadproblem=t, - nazev=pfx + f"{'úloha' if b > 0 else 'problém'} {k}", + nazev=pfx + f"{'úloha' if b > 0 else 'problém'} {cislo}.{k}", autor=t.autor, garant=t.garant, max_body=b, - cislo_zadani=Cislo.get(t.rocnik.rocnik, dil), + cislo_zadani=Cislo.get(t.rocnik.rocnik, cislo), kod=k, stav=Problem.STAV_ZADANY, )