Vylepšení hodnotítka fix #1354 fix #1237 #20

Merged
zelvuska merged 25 commits from vylepseni_odevzdavatka into master 2 years ago
zelvuska commented 2 years ago
Owner
There is no content yet.
zelvuska added 3 commits 2 years ago
Poster
Owner

https://mam-test.ks.matfyz.cz/resitel/reseni/33144: 13333,33333333333333333333333

Opraveno

~~https://mam-test.ks.matfyz.cz/resitel/reseni/33144: 13333,33333333333333333333333~~ Opraveno
zelvuska added 1 commit 2 years ago
zelvuska added 1 commit 2 years ago
zelvuska added 1 commit 2 years ago
zelvuska added 1 commit 2 years ago
zelvuska added 1 commit 2 years ago
zelvuska added 1 commit 2 years ago
zelvuska added 1 commit 2 years ago
zelvuska force-pushed vylepseni_odevzdavatka from ae83838efc to fa688ec8f3 2 years ago
zelvuska added 1 commit 2 years ago
zelvuska added 1 commit 2 years ago
ec0174dcdd Merge remote-tracking branch 'origin/master' into vylepseni_odevzdavatka
zelvuska added 1 commit 2 years ago
zelvuska changed title from WIP: vylepseni_odevzdavatka fix #1354 fix #1237 to vylepseni_odevzdavatka fix #1354 fix #1237 2 years ago
Poster
Owner

Ještě by to chtělo lépe zformulovat texty, ale jinak mi přijde, že už to dělá všechno tak, jak má.

Ještě by to chtělo lépe zformulovat texty, ale jinak mi přijde, že už to dělá všechno tak, jak má.
ledoian reviewed 2 years ago
</table>
<table id="form_set">
<tr><th>Problém</th><th>Body</th><th>Deadline pro body</th><th>Zpětná vazba pro řešitele</th></tr>
<tr><th>Problém</th><th>{# 📖 #}🧍</th><th>{# 🔵 #}🧍∑</th><th class="teamovaCast">{# 💪 #}🧑‍🤝‍🧑</th><th class="teamovaCast">{# ❤ #}🧑‍🤝‍🧑∑</th><th>Deadline pro body</th><th>Zpětná vazba pro řešitele</th></tr>
Poster
Owner

LOL komentáře. Za pár let je nikdo nepochopí, ale co už :-)

LOL komentáře. Za pár let je nikdo nepochopí, ale co už :-)
Poster
Owner

Na Apríla to změnit na zakomentované (a přidat popisky ❤ životy, 🔵 mana, 💪 síla, 📖 charisma)…

Na Apríla to změnit na zakomentované (a přidat popisky ❤ životy, 🔵 mana, 💪 síla, 📖 charisma)…
zelvuska marked this conversation as resolved
zelvuska added 1 commit 2 years ago
zelvuska added 1 commit 2 years ago
ledoian reviewed 2 years ago
)
logger.info(f"Creating Hodnoceni: {hodnoceni}")
zmeny_bodu = [it for it in form.changed_data if it.startswith("body")]
if len(zmeny_bodu) == 1:
Poster
Owner

Nechceš spadnout / zalogogovat ERROR, když to bude větší než jedna?

Nechceš spadnout / zalogogovat ERROR, když to bude větší než jedna?
Poster
Owner

Á, ono když bude 4, tak se nic nezměnilo (žádné pole není disabled…)

Á, ono když bude 4, tak se nic nezměnilo (žádné pole není disabled…)
zelvuska marked this conversation as resolved
zelvuska added 1 commit 2 years ago
zelvuska changed title from vylepseni_odevzdavatka fix #1354 fix #1237 to Vylepšení odevzdávátka fix #1354 fix #1237 2 years ago
ledoian reviewed 2 years ago
return Hodnoceni.objects.filter(problem=self.problem, reseni__resitele=self.reseni.resitele.first(), body__isnull=False).aggregate(Sum("body"))["body__sum"]
@body_celkem.setter
def body_celkem(self, value):
Poster
Owner

Nechceš k tomu napsat assert nebo rovnou celý test, který by hlídal, že po nastavení bodů tímhle způsobem se správně aktualizuje počet bodů a celkový součet?

Nechceš k tomu napsat assert nebo rovnou celý test, který by hlídal, že po nastavení bodů tímhle způsobem se správně aktualizuje počet bodů a celkový součet?
Poster
Owner

ditto níž

ditto níž
zelvuska marked this conversation as resolved
ledoian reviewed 2 years ago
@property
def body_neprepocitane_max(self):
if self.body_max is None:
return None
Poster
Owner

IMHO spíš počet bodů za úlohu je počet nepřepočítaných bodů, i.e. když řešíš úlohu za $b$ bodů ve dvojici, tak plný počet označuje stav, kdy řešení dostane $b$ bodů a tedy každý řešitel jen $0.75b$.

IMHO spíš počet bodů za úlohu je počet nepřepočítaných bodů, i.e. když řešíš úlohu za $b$ bodů ve dvojici, tak plný počet označuje stav, kdy řešení dostane $b$ bodů a tedy každý řešitel jen $0.75b$.
Poster
Owner

No, tak $b$ bodů jsou nepřepočítané body, to je ten stav, který chceš většinou řešit.

A body ve výsledkovce (tedy body bez přívlastku) jsou už ty přepočítané pomocí našeho kouzelného vzorce z webu…

No, tak $b$ bodů jsou nepřepočítané body, to je ten stav, který chceš většinou řešit. A body ve výsledkovce (tedy body bez přívlastku) jsou už ty přepočítané pomocí našeho kouzelného vzorce z webu…
Poster
Owner

No, ale tvoje self.body_max vrací $b$, i když má vracet $3b/(n+2)$, protože $b$ má vracet self.body_neprepocitane_max, ne?

No, ale tvoje `self.body_max` vrací $b$, i když má vracet $3b/(n+2)$, protože $b$ má vracet `self.body_neprepocitane_max`, ne?
Poster
Owner

Mám to opačně, co?

Mám to opačně, co?
Poster
Owner

A hlavně to aktuálně z nějakého důvodu nefunguje :'(

A hlavně to aktuálně z nějakého důvodu nefunguje :'(
Poster
Owner

Áno, opačně

(Edit: fix race condition :-P)

Áno, opačně (Edit: fix race condition :-P)
zelvuska marked this conversation as resolved
ledoian reviewed 2 years ago
if self.body_celkem is None:
self.body += value
else:
self.body += value - self.body_celkem
Poster
Owner

Tohle potenciálně generuje záporné body…

Tohle potenciálně generuje záporné body…
Poster
Owner

A to je špatně?

A to je špatně?
Poster
Owner

Považuji to za dost neočekávatelné chování, zvlášť když jako org píšu body kladné. Obecně si myslím, že spíš strhávat body od již udělených nechceme (možná vyjma „ujelo mi bodování, zpětně měním počet bodů)…

Považuji to za dost neočekávatelné chování, zvlášť když jako org píšu body kladné. Obecně si myslím, že spíš strhávat body od již udělených nechceme (možná vyjma „ujelo mi bodování, zpětně _měním_ počet bodů)…
Poster
Owner

A jaké je tedy očekávané chování?

A jaké je tedy očekávané chování?
Poster
Owner

Nedovolit to vůbec (a že má kdyžtak org napsat webařům, pokud nechápe proč)? Hodit aspoň alert(), že se o to org pokouší a že to bude vypadat blbě ve výsledkovce?

Nedovolit to vůbec (a že má kdyžtak org napsat webařům, pokud nechápe proč)? Hodit aspoň `alert()`, že se o to org pokouší a že to bude vypadat blbě ve výsledkovce?
Poster
Owner

Ale doteď tam žádná taková šaráda nebyla. (Otestováno, záporné body mohu zadat vesele.) A já na frontendu nepoznám, kolik za to už řešitel dostal…

Ale doteď tam žádná taková šaráda nebyla. (Otestováno, záporné body mohu zadat vesele.) A já na frontendu nepoznám, kolik za to už řešitel dostal…
Poster
Owner

Ale doteď se ti nemohlo stát, že bys ty záporné body napsal omylem – musel bys explicitně zmáčknout mínus. Není potřeba orgy ochránit proti zlým úmyslům, ale proti dobrým chybám…

Ale doteď se ti nemohlo stát, že bys ty záporné body napsal omylem – musel bys explicitně zmáčknout mínus. Není potřeba orgy ochránit proti zlým úmyslům, ale proti dobrým chybám…
Poster
Owner

Přijde mi, že to v podstatě odchytává jen miniaturní část toho problému. To, když to zrovna vyjde záporné. Ale ve chvíli, kdy tam org zadá libovolný jiný nesprávný počet, tak to stejně nezjistíme. Tohle políčko prostě vyžaduje, aby tam org zadal správný počet.

Přijde mi, že to v podstatě odchytává jen miniaturní část toho problému. To, když to zrovna vyjde záporné. Ale ve chvíli, kdy tam org zadá libovolný jiný nesprávný počet, tak to stejně nezjistíme. Tohle políčko prostě vyžaduje, aby tam org zadal správný počet.
Poster
Owner

Jakoby souhlasím s tím, že tam ta obrana může být (přídám tam asi javascript, který vykřikne, pokud při načtení libovolná z těch hodnot je záporná).

Ale nepřijde mi, že by to nějak signifikantně zvyšovalo ochranu proti špatnému zadání.

Jakoby souhlasím s tím, že tam ta obrana může být (přídám tam asi javascript, který vykřikne, pokud při načtení libovolná z těch hodnot je záporná). Ale nepřijde mi, že by to nějak signifikantně zvyšovalo ochranu proti špatnému zadání.
zelvuska marked this conversation as resolved
Owner

Kód jsem viděl a na první pohled je OK, jestli funguje jsem ještě nezkoušel.

Kód jsem viděl a na první pohled je OK, jestli funguje jsem ještě nezkoušel.
ledoian reviewed 2 years ago
# TODO najít správné místo
@staticmethod
def inverze_vzorecku_na_prepocet(body: decimal.Decimal, resitelu) -> decimal.Decimal:
return round(body * (resitelu + 2) / 3, 1)
Poster
Owner

seminar/utils.py? odevzdavatko/utils.py?

seminar/utils.py? odevzdavatko/utils.py?
zelvuska marked this conversation as resolved
zelvuska added 2 commits 2 years ago
zelvuska added 1 commit 2 years ago
zelvuska added 1 commit 2 years ago
zelvuska added 2 commits 2 years ago
ledoian reviewed 2 years ago
<p>{{ poznamka_form.poznamka }}</p>
<script>vporadku=true;</script>
{% for h in hodnoceni %}{% if h.body < 0.0 %} <script>if(vporadku){vporadku=false;alert("Pozor! Některé hodnocení má záporné body.\n\nBuď jde o záměr, nebo o špatné zadáný počet bodů (např. součet bodů za úlohu) nebo se něco pokazilo.\n\nPokud se to děje neočekávaně a opakovaně, napiš webařům :)");}</script> {% endif %}{% endfor %}
Poster
Owner

Nechceme to trochu pozalamovat?

Nechceme to trochu pozalamovat?
zelvuska marked this conversation as resolved
ledoian reviewed 2 years ago
if len(zmeny_bodu) == 1:
hodnoceni.__setattr__(zmeny_bodu[0], data_for_body[zmeny_bodu[0]])
if len(zmeny_bodu) != 1 and len(zmeny_bodu) != 4:
print(f"Hodnocení {hodnoceni} mělo mít nastavené víc různých bodů: {zmeny_bodu}. Nastavuji -0.1.")
Poster
Owner

Tenhle print je k něčemu dobrý? Nechal bych jen warning o řádek níž, je o dost víc konfigurovatelný…

Tenhle print je k něčemu dobrý? Nechal bych jen warning o řádek níž, je o dost víc konfigurovatelný…
zelvuska marked this conversation as resolved
ledoian reviewed 2 years ago
zmeny_bodu = [it for it in form.changed_data if it.startswith("body")]
if len(zmeny_bodu) == 1:
hodnoceni.__setattr__(zmeny_bodu[0], data_for_body[zmeny_bodu[0]])
if len(zmeny_bodu) != 1 and len(zmeny_bodu) != 4:
Poster
Owner

Proč že můžou být 4?

Proč že můžou být 4?
Poster
Owner

Už to vidím: je to 4 když se nic nezmění. Prosím, napišme to k tomu do komentáře, rozhodně mi to nepřijde intuitivní.

Už to vidím: je to 4 když se nic nezmění. Prosím, napišme to k tomu do komentáře, rozhodně mi to nepřijde intuitivní.
zelvuska marked this conversation as resolved
zelvuska changed title from Vylepšení odevzdávátka fix #1354 fix #1237 to WIP: Vylepšení odevzdávátka fix #1354 fix #1237 2 years ago
zelvuska added 1 commit 2 years ago
zelvuska added 3 commits 2 years ago
zelvuska added 1 commit 2 years ago
zelvuska added 1 commit 2 years ago
zelvuska changed title from WIP: Vylepšení odevzdávátka fix #1354 fix #1237 to WIP: Vylepšení odevzdávátka fix #1354 fix #1237 2 years ago
zelvuska changed title from WIP: Vylepšení odevzdávátka fix #1354 fix #1237 to WIP: Vylepšení hodnotítka fix #1354 fix #1237 2 years ago
zelvuska added 1 commit 2 years ago
zelvuska changed title from WIP: Vylepšení hodnotítka fix #1354 fix #1237 to Vylepšení hodnotítka fix #1354 fix #1237 2 years ago
zelvuska merged commit 2ab6e76fbe into master 2 years ago
zelvuska deleted branch vylepseni_odevzdavatka 2 years ago
The pull request has been merged as 2ab6e76fbe.
Sign in to join this conversation.
No reviewers
No Label
No Milestone
No project
No Assignees
2 Participants
Notifications
Due Date

No due date set.

Dependencies

This pull request currently doesn't have any dependencies.

Loading…
There is no content yet.