models.py: prehozeni Osoba a Skola, zmena nazvu knihovny, carky a pod.
This commit is contained in:
parent
7a984aea18
commit
8d48e8ee83
1 changed files with 61 additions and 60 deletions
|
@ -7,7 +7,7 @@ from django.contrib import auth
|
||||||
from django.utils import timezone
|
from django.utils import timezone
|
||||||
from django.conf import settings
|
from django.conf import settings
|
||||||
from django.utils.encoding import python_2_unicode_compatible
|
from django.utils.encoding import python_2_unicode_compatible
|
||||||
from django.utils.encoding import force_unicode
|
from django.utils.encoding import force_text
|
||||||
from django.utils.text import slugify
|
from django.utils.text import slugify
|
||||||
from django.core.urlresolvers import reverse
|
from django.core.urlresolvers import reverse
|
||||||
from django.core.cache import cache
|
from django.core.cache import cache
|
||||||
|
@ -50,62 +50,6 @@ class SeminarModelBase(models.Model):
|
||||||
# viz https://ovvp.mff.cuni.cz/wiki/aesop/export-skol.
|
# viz https://ovvp.mff.cuni.cz/wiki/aesop/export-skol.
|
||||||
#
|
#
|
||||||
|
|
||||||
@reversion.register(ignore_duplicates=True)
|
|
||||||
@python_2_unicode_compatible
|
|
||||||
class Skola(SeminarModelBase):
|
|
||||||
|
|
||||||
class Meta:
|
|
||||||
db_table = 'seminar_skoly'
|
|
||||||
verbose_name = 'Škola'
|
|
||||||
verbose_name_plural = 'Školy'
|
|
||||||
ordering = ['mesto', 'nazev']
|
|
||||||
|
|
||||||
# Interní ID
|
|
||||||
id = models.AutoField(primary_key = True)
|
|
||||||
|
|
||||||
# Aesopi ID "izo:..." nebo "aesop:..."
|
|
||||||
# NULL znamená v exportu do aesopa "ufo"
|
|
||||||
aesop_id = models.CharField('Aesop ID', max_length=32, blank=True, default='',
|
|
||||||
help_text='Aesopi ID typu "izo:..." nebo "aesop:..."')
|
|
||||||
|
|
||||||
# IZO školy (jen české školy)
|
|
||||||
izo = models.CharField('IZO', max_length=32, blank=True,
|
|
||||||
help_text='IZO školy (jen české školy)')
|
|
||||||
|
|
||||||
# Celý název školy
|
|
||||||
nazev = models.CharField('název', max_length=256,
|
|
||||||
help_text='Celý název školy')
|
|
||||||
|
|
||||||
# Zkraceny nazev pro zobrazení ve výsledkovce, volitelné.
|
|
||||||
# Není v Aesopovi, musíme vytvářet sami.
|
|
||||||
kratky_nazev = models.CharField('zkrácený název', max_length=256, blank=True,
|
|
||||||
help_text="Zkrácený název pro zobrazení ve výsledkovce")
|
|
||||||
|
|
||||||
# Ulice může být jen číslo
|
|
||||||
ulice = models.CharField('ulice', max_length=256)
|
|
||||||
|
|
||||||
mesto = models.CharField('město', max_length=256)
|
|
||||||
|
|
||||||
psc = models.CharField('PSČ', max_length=32)
|
|
||||||
|
|
||||||
# ISO 3166-1 dvojznakovy kod zeme velkym pismem (CZ, SK)
|
|
||||||
# Ekvivalentní s CharField(max_length=2, default='CZ', ...)
|
|
||||||
stat = CountryField('stát', default='CZ',
|
|
||||||
help_text='ISO 3166-1 kód země velkými písmeny (CZ, SK, ...)')
|
|
||||||
|
|
||||||
# Jaké vzdělání škpla poskytuje?
|
|
||||||
je_zs = models.BooleanField('základní stupeň', default=True)
|
|
||||||
je_ss = models.BooleanField('střední stupeň', default=True)
|
|
||||||
|
|
||||||
poznamka = models.TextField('neveřejná poznámka', blank=True,
|
|
||||||
help_text='Neveřejná poznámka ke škole (plain text)')
|
|
||||||
|
|
||||||
kontaktni_osoba = models.ForeignKey(Osoba, verbose_name='Kontaktní osoba',
|
|
||||||
blank=True, null=True)
|
|
||||||
|
|
||||||
def __str__(self):
|
|
||||||
return force_unicode('%s, %s, %s' % (self.nazev, self.ulice, self.mesto))
|
|
||||||
|
|
||||||
@reversion.register(ignore_duplicates=True)
|
@reversion.register(ignore_duplicates=True)
|
||||||
@python_2_unicode_compatible
|
@python_2_unicode_compatible
|
||||||
class Osoba(SeminarModelBase):
|
class Osoba(SeminarModelBase):
|
||||||
|
@ -185,6 +129,63 @@ class Osoba(SeminarModelBase):
|
||||||
def __str__(self):
|
def __str__(self):
|
||||||
return force_unicode("Osoba({})".format(self.plne_jmeno()))
|
return force_unicode("Osoba({})".format(self.plne_jmeno()))
|
||||||
|
|
||||||
|
|
||||||
|
@reversion.register(ignore_duplicates=True)
|
||||||
|
@python_2_unicode_compatible
|
||||||
|
class Skola(SeminarModelBase):
|
||||||
|
|
||||||
|
class Meta:
|
||||||
|
db_table = 'seminar_skoly'
|
||||||
|
verbose_name = 'Škola'
|
||||||
|
verbose_name_plural = 'Školy'
|
||||||
|
ordering = ['mesto', 'nazev']
|
||||||
|
|
||||||
|
# Interní ID
|
||||||
|
id = models.AutoField(primary_key = True)
|
||||||
|
|
||||||
|
# Aesopi ID "izo:..." nebo "aesop:..."
|
||||||
|
# NULL znamená v exportu do aesopa "ufo"
|
||||||
|
aesop_id = models.CharField('Aesop ID', max_length=32, blank=True, default='',
|
||||||
|
help_text='Aesopi ID typu "izo:..." nebo "aesop:..."')
|
||||||
|
|
||||||
|
# IZO školy (jen české školy)
|
||||||
|
izo = models.CharField('IZO', max_length=32, blank=True,
|
||||||
|
help_text='IZO školy (jen české školy)')
|
||||||
|
|
||||||
|
# Celý název školy
|
||||||
|
nazev = models.CharField('název', max_length=256,
|
||||||
|
help_text='Celý název školy')
|
||||||
|
|
||||||
|
# Zkraceny nazev pro zobrazení ve výsledkovce, volitelné.
|
||||||
|
# Není v Aesopovi, musíme vytvářet sami.
|
||||||
|
kratky_nazev = models.CharField('zkrácený název', max_length=256, blank=True,
|
||||||
|
help_text="Zkrácený název pro zobrazení ve výsledkovce")
|
||||||
|
|
||||||
|
# Ulice může být jen číslo
|
||||||
|
ulice = models.CharField('ulice', max_length=256)
|
||||||
|
|
||||||
|
mesto = models.CharField('město', max_length=256)
|
||||||
|
|
||||||
|
psc = models.CharField('PSČ', max_length=32)
|
||||||
|
|
||||||
|
# ISO 3166-1 dvojznakovy kod zeme velkym pismem (CZ, SK)
|
||||||
|
# Ekvivalentní s CharField(max_length=2, default='CZ', ...)
|
||||||
|
stat = CountryField('stát', default='CZ',
|
||||||
|
help_text='ISO 3166-1 kód země velkými písmeny (CZ, SK, ...)')
|
||||||
|
|
||||||
|
# Jaké vzdělání škpla poskytuje?
|
||||||
|
je_zs = models.BooleanField('základní stupeň', default=True)
|
||||||
|
je_ss = models.BooleanField('střední stupeň', default=True)
|
||||||
|
|
||||||
|
poznamka = models.TextField('neveřejná poznámka', blank=True,
|
||||||
|
help_text='Neveřejná poznámka ke škole (plain text)')
|
||||||
|
|
||||||
|
kontaktni_osoba = models.ForeignKey(Osoba, verbose_name='Kontaktní osoba',
|
||||||
|
blank=True, null=True)
|
||||||
|
|
||||||
|
def __str__(self):
|
||||||
|
return force_unicode('%s, %s, %s' % (self.nazev, self.ulice, self.mesto))
|
||||||
|
|
||||||
class Prijemce(SeminarModelBase):
|
class Prijemce(SeminarModelBase):
|
||||||
class Meta:
|
class Meta:
|
||||||
db_table = 'seminar_prijemce'
|
db_table = 'seminar_prijemce'
|
||||||
|
@ -798,7 +799,7 @@ class Pohadka(SeminarModelBase):
|
||||||
class Organizator(SeminarModelBase):
|
class Organizator(SeminarModelBase):
|
||||||
# zmena dedicnosti z models.Model na SeminarModelBase, potencialni vznik bugu
|
# zmena dedicnosti z models.Model na SeminarModelBase, potencialni vznik bugu
|
||||||
|
|
||||||
osoba = models.ForeignKey(Osoba, verbose_name='osoba', related_name='org'
|
osoba = models.ForeignKey(Osoba, verbose_name='osoba', related_name='org',
|
||||||
help_text='osobní údaje organizátora', null=False, blank=False)
|
help_text='osobní údaje organizátora', null=False, blank=False)
|
||||||
|
|
||||||
vytvoreno = models.DateTimeField(
|
vytvoreno = models.DateTimeField(
|
||||||
|
@ -1042,8 +1043,8 @@ class Obrazek(SeminarModelBase):
|
||||||
na_web = models.ImageField('obrázek na web', upload_to='obrazky/%Y/%m/%d/',
|
na_web = models.ImageField('obrázek na web', upload_to='obrazky/%Y/%m/%d/',
|
||||||
null=True, blank=True)
|
null=True, blank=True)
|
||||||
|
|
||||||
text = models.ForeignKey(Text, verbose_name='text', help_text='text, ve kterém
|
text = models.ForeignKey(Text, verbose_name='text',
|
||||||
se obrázek vyskytuje', null=False, blank=False)
|
help_text='text, ve kterém se obrázek vyskytuje', null=False, blank=False)
|
||||||
|
|
||||||
do_cisla_barevny = models.FileField('barevný obrázek do čísla',
|
do_cisla_barevny = models.FileField('barevný obrázek do čísla',
|
||||||
help_text = 'Barevná verze obrázku do čísla',
|
help_text = 'Barevná verze obrázku do čísla',
|
||||||
|
|
Loading…
Reference in a new issue