Uhlazení prednasky.models
This commit is contained in:
parent
e933c6978d
commit
6c35a5b6f3
1 changed files with 53 additions and 56 deletions
|
@ -6,58 +6,79 @@ from personalni.models import Organizator, Osoba
|
||||||
|
|
||||||
class Seznam(models.Model):
|
class Seznam(models.Model):
|
||||||
class Meta:
|
class Meta:
|
||||||
db_table = 'prednasky_seznam'
|
db_table = "prednasky_seznam"
|
||||||
verbose_name = 'Seznam přednášek'
|
verbose_name = "Seznam přednášek"
|
||||||
verbose_name_plural = 'Seznamy přednášek'
|
verbose_name_plural = "Seznamy přednášek"
|
||||||
ordering = ['soustredeni', 'stav']
|
ordering = ["soustredeni", "stav"]
|
||||||
|
|
||||||
class Stav(models.IntegerChoices):
|
class Stav(models.IntegerChoices):
|
||||||
NAVRH = 1, "Návrh"
|
NAVRH = 1, "Návrh"
|
||||||
BUDE = 2, "Bude"
|
BUDE = 2, "Bude"
|
||||||
|
|
||||||
id = models.AutoField(primary_key = True)
|
id = models.AutoField(primary_key=True)
|
||||||
soustredeni = models.ForeignKey(Soustredeni,null = True, default = None,
|
soustredeni = models.ForeignKey(Soustredeni, null=True, default=None, on_delete=models.PROTECT)
|
||||||
on_delete=models.PROTECT)
|
stav = models.IntegerField("Stav", choices=Stav.choices, default=Stav.NAVRH)
|
||||||
stav = models.IntegerField('Stav', choices=Stav.choices, default=Stav.NAVRH)
|
|
||||||
|
|
||||||
def __str__(self):
|
def __str__(self):
|
||||||
return "Seznam {}přednášek na {}".format("návrhů "
|
return f"Seznam {"návrhů " if self.stav == Seznam.Stav.NAVRH else ""}přednášek na {self.soustredeni}"
|
||||||
if self.stav == Seznam.Stav.NAVRH else "", self.soustredeni)
|
|
||||||
|
|
||||||
class Prednaska(models.Model):
|
class Prednaska(models.Model):
|
||||||
class Meta:
|
class Meta:
|
||||||
db_table = 'prednasky_prednaska'
|
db_table = "prednasky_prednaska"
|
||||||
verbose_name = 'Přednáška'
|
verbose_name = "Přednáška"
|
||||||
verbose_name_plural = 'Přednášky'
|
verbose_name_plural = "Přednášky"
|
||||||
ordering = ['org', 'nazev']
|
ordering = ["org", "nazev"]
|
||||||
|
|
||||||
class Obtiznost(models.IntegerChoices):
|
class Obtiznost(models.IntegerChoices):
|
||||||
LEHKA = 1, "Lehká"
|
LEHKA = 1, "Lehká"
|
||||||
STREDNI = 2, "Střední"
|
STREDNI = 2, "Střední"
|
||||||
TEZKA = 3, "Těžká"
|
TEZKA = 3, "Těžká"
|
||||||
|
|
||||||
id = models.AutoField(primary_key = True)
|
id = models.AutoField(primary_key=True)
|
||||||
nazev = models.CharField('Název', max_length = 300)
|
nazev = models.CharField("Název", max_length=300)
|
||||||
org = models.ForeignKey(Organizator, on_delete=models.PROTECT)
|
org = models.ForeignKey(Organizator, on_delete=models.PROTECT)
|
||||||
popis = models.TextField('Popis pro orgy',null = True, blank = True,help_text = 'Neveřejný popis pro ostatní orgy')
|
popis = models.TextField("Popis pro orgy", null=True, blank=True, help_text="Neveřejný popis pro ostatní orgy")
|
||||||
anotace = models.TextField('Anotace',null = True, blank = True, help_text = 'Veřejná anotace v hlasování')
|
anotace = models.TextField("Anotace", null=True, blank=True, help_text="Veřejná anotace v hlasování")
|
||||||
obtiznost = models.IntegerField('Obtížnost', choices=Obtiznost.choices)
|
obtiznost = models.IntegerField("Obtížnost", choices=Obtiznost.choices)
|
||||||
obor = models.CharField('Obor', max_length = 5, help_text = 'Podmnožina MFIOB')
|
obor = models.CharField("Obor", max_length=5, help_text="Podmnožina MFIOB")
|
||||||
klicova = models.CharField('Klíčová slova', max_length = 200, null = True, blank = True)
|
klicova = models.CharField("Klíčová slova", max_length=200, null=True, blank=True)
|
||||||
seznamy = models.ManyToManyField(Seznam)
|
seznamy = models.ManyToManyField(Seznam)
|
||||||
|
|
||||||
def __str__(self):
|
def __str__(self):
|
||||||
return "{} ({})".format(self.nazev, self.org)
|
return f"{self.nazev} ({self.org})"
|
||||||
|
|
||||||
|
|
||||||
|
class Hlasovani(models.Model):
|
||||||
|
class Meta:
|
||||||
|
db_table = "prednasky_hlasovani"
|
||||||
|
verbose_name = "Hlasování"
|
||||||
|
verbose_name_plural = "Hlasování"
|
||||||
|
ordering = ["ucastnik", "prednaska"]
|
||||||
|
|
||||||
|
class Body(models.IntegerChoices):
|
||||||
|
NECHCI = -1, "rozhodně nechci"
|
||||||
|
JEDNO = 0, "je mi to jedno"
|
||||||
|
CHCI = 1, "rozhodně chci"
|
||||||
|
|
||||||
|
id = models.AutoField(primary_key=True)
|
||||||
|
prednaska = models.ForeignKey(Prednaska, on_delete=models.CASCADE)
|
||||||
|
body = models.IntegerField("Body", default=Body.JEDNO, choices=Body.choices)
|
||||||
|
ucastnik = models.CharField("Účastník", max_length=100)
|
||||||
|
seznam = models.ForeignKey(Seznam, null=True, on_delete=models.SET_NULL)
|
||||||
|
|
||||||
|
def __str__(self):
|
||||||
|
return f"{self.ucastnik} dal {self.body} bodů {self.prednaska} v seznamu {self.seznam}"
|
||||||
|
|
||||||
|
|
||||||
class Znalost(models.Model):
|
class Znalost(models.Model):
|
||||||
class Meta:
|
class Meta:
|
||||||
db_table = 'prednasky_znalost'
|
db_table = "prednasky_znalost"
|
||||||
verbose_name = 'Znalost k přednáškám'
|
verbose_name = "Znalost k přednáškám"
|
||||||
verbose_name_plural = 'Znalosti k přednáškám'
|
verbose_name_plural = "Znalosti k přednáškám"
|
||||||
|
|
||||||
nazev = models.CharField('Nadpis', max_length=200, blank=False, null=False, help_text = 'Např. Neuronové sítě')
|
nazev = models.CharField("Nadpis", max_length=200, blank=False, null=False, help_text="Např. Neuronové sítě")
|
||||||
text = models.TextField('Detailní popis', blank=True, null=True, help_text="Např. Perceptron, vrstevnatá síť, forward a backward propagation")
|
text = models.TextField("Detailní popis", blank=True, null=True, help_text="Např. Perceptron, vrstevnatá síť, forward a backward propagation")
|
||||||
seznamy = models.ManyToManyField(Seznam)
|
seznamy = models.ManyToManyField(Seznam)
|
||||||
|
|
||||||
def __str__(self):
|
def __str__(self):
|
||||||
|
@ -66,36 +87,12 @@ class Znalost(models.Model):
|
||||||
|
|
||||||
class HlasovaniOZnalostech(models.Model):
|
class HlasovaniOZnalostech(models.Model):
|
||||||
class ODPOVED(models.IntegerChoices):
|
class ODPOVED(models.IntegerChoices):
|
||||||
UMIM = -1, 'Tohle celkem umím'
|
UMIM = -1, "Tohle celkem umím"
|
||||||
CIRCA = 0, 'Už jsem o tom slyšel, ale neřekl bychm, že to úplně umím'
|
CIRCA = 0, "Už jsem o tom slyšel, ale neřekl bychm, že to úplně umím"
|
||||||
NEUMIM = 1, 'Tohle vůbec neznám'
|
NEUMIM = 1, "Tohle vůbec neznám"
|
||||||
|
|
||||||
odpoved = models.CharField(u'odpověď', max_length=16, choices=ODPOVED.choices, blank=False, null=False)
|
odpoved = models.CharField(u"odpověď", max_length=16, choices=ODPOVED.choices, blank=False, null=False)
|
||||||
znalost = models.ForeignKey(Znalost, on_delete=models.CASCADE, blank=False, null=False)
|
znalost = models.ForeignKey(Znalost, on_delete=models.CASCADE, blank=False, null=False)
|
||||||
ucastnik = models.ForeignKey(Osoba, on_delete=models.CASCADE, blank=False, null=False)
|
ucastnik = models.ForeignKey(Osoba, on_delete=models.CASCADE, blank=False, null=False)
|
||||||
seznam = models.ForeignKey(Seznam, on_delete=models.SET_NULL, blank=True, null=True)
|
seznam = models.ForeignKey(Seznam, on_delete=models.SET_NULL, blank=True, null=True)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
class Hlasovani(models.Model):
|
|
||||||
class Meta:
|
|
||||||
db_table = 'prednasky_hlasovani'
|
|
||||||
verbose_name = 'Hlasování'
|
|
||||||
verbose_name_plural = 'Hlasování'
|
|
||||||
ordering = ['ucastnik', 'prednaska']
|
|
||||||
|
|
||||||
class Body(models.IntegerChoices):
|
|
||||||
NECHCI = -1, "rozhodně nechci"
|
|
||||||
JEDNO = 0, "je mi to jedno"
|
|
||||||
CHCI = 1, "rozhodně chci"
|
|
||||||
|
|
||||||
id = models.AutoField(primary_key = True)
|
|
||||||
prednaska = models.ForeignKey(Prednaska, on_delete=models.CASCADE)
|
|
||||||
body = models.IntegerField('Body', default = Body.JEDNO, choices = Body.choices)
|
|
||||||
ucastnik = models.CharField('Účastník', max_length = 100)
|
|
||||||
seznam = models.ForeignKey(Seznam,null=True,on_delete=models.SET_NULL)
|
|
||||||
|
|
||||||
def __str__(self):
|
|
||||||
return "{} dal {} bodů {} v seznamu {}".format(self.ucastnik,
|
|
||||||
self.body, self.prednaska, self.seznam)
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue