Přednášky #87

Merged
zelvuska merged 14 commits from prednasky into master 2025-02-26 20:58:50 +01:00
3 changed files with 22 additions and 0 deletions
Showing only changes of commit dcba5b6b30 - Show all commits

View file

@ -0,0 +1,20 @@
# Generated by Django 4.2.16 on 2025-02-19 17:31
from django.db import migrations, models
import django.db.models.deletion
class Migration(migrations.Migration):
dependencies = [
('personalni', '0019_rename_upozorneni_resitel_upozornovat_na_opravy_reseni'),
('prednasky', '0022_preklep_u_odpovedi_hlasovanioznalostech'),
]
operations = [
migrations.AddField(
model_name='hlasovani',
name='ucastnik_osoba',
field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='personalni.osoba'),
),
]

View file

@ -88,6 +88,7 @@ class Hlasovani(models.Model):
#: že všechna předchozí hlasování zde mají náhodný string…)
#: TODO Změnit to na Osobu*
ucastnik = models.CharField("Účastník", max_length=100)
zelvuska marked this conversation as resolved
Review

Hmm, existuje čisté a praktické řešení. To čisté a datazachovávající je mít pro osobu nový FK (s null=True, blank=False) a mít stará řešení se string-účastníkem a nová s Osobou.

Praktické řešení je se na původní hlasy vykašlat, buď je dropnout úplně, nebo jim nastavit Osobu na NULL a pak sice nepůjde dohledat, kdo hlasoval k čemu, ale aspoň informace o zájmu v každém seznamu přežije. (Myslím, že ta druhá varianta vyžaduje zbytečně moc hackování třeba exportů, takže za to nestojí…)

Hmm, existuje čisté a praktické řešení. To čisté a datazachovávající je mít pro osobu nový FK (s `null=True, blank=False`) a mít stará řešení se string-účastníkem a nová s Osobou. Praktické řešení je se na původní hlasy vykašlat, buď je dropnout úplně, nebo jim nastavit Osobu na NULL a pak sice nepůjde dohledat, kdo hlasoval k čemu, ale aspoň informace o zájmu v každém seznamu přežije. (Myslím, že ta druhá varianta vyžaduje zbytečně moc hackování třeba exportů, takže za to nestojí…)
Review

Also: tu Osobu (s null=True) si IMHO chceme ukládat už teď, ať pak můžeme zmigrovat a nechybí nám data… (původní hlasovátko ještě nevědělo nic o účastnických uživatelích/osobách…)

Also: tu Osobu (s null=True) si IMHO chceme ukládat už teď, ať pak můžeme zmigrovat a nechybí nám data… (původní hlasovátko ještě nevědělo nic o účastnických uživatelích/osobách…)
ucastnik_osoba = models.ForeignKey(Osoba, on_delete=models.CASCADE, blank=False, null=True)
seznam = models.ForeignKey(Seznam, null=True, on_delete=models.SET_NULL)
def __str__(self):

View file

@ -64,6 +64,7 @@ def newPrednaska(request: HttpRequest) -> HttpResponse:
prednaska=prednaska,
body=form.cleaned_data['body'],
ucastnik=ucastnik,
ucastnik_osoba=osoba,
seznam=seznam,
)