|
@ -36,9 +36,9 @@ def gen_osoby(rnd, size): |
|
|
'Unterschiedlich', 'Old York', 'Lancastershire', 'Vóloďháza'] |
|
|
'Unterschiedlich', 'Old York', 'Lancastershire', 'Vóloďháza'] |
|
|
|
|
|
|
|
|
osoby = [] |
|
|
osoby = [] |
|
|
# 3 je náhodná konstanta, size je použité na víc místech a |
|
|
# 30 je náhodná konstanta, size je použité na víc místech a |
|
|
# říká, jak velká asi chceme testovací data |
|
|
# říká, jak velká asi chceme testovací data |
|
|
for i in range(3 * size): |
|
|
for i in range(30 * size): |
|
|
pohlavi = rnd.randint(0,1) |
|
|
pohlavi = rnd.randint(0,1) |
|
|
jmeno = rnd.choice([jmena_m, jmena_f][pohlavi]) |
|
|
jmeno = rnd.choice([jmena_m, jmena_f][pohlavi]) |
|
|
prijmeni = rnd.choice([prijmeni_m, prijmeni_f][pohlavi]) |
|
|
prijmeni = rnd.choice([prijmeni_m, prijmeni_f][pohlavi]) |
|
@ -48,7 +48,6 @@ def gen_osoby(rnd, size): |
|
|
narozeni = datetime.date(rnd.randint(1980, 2020), rnd.randint(1, 12), |
|
|
narozeni = datetime.date(rnd.randint(1980, 2020), rnd.randint(1, 12), |
|
|
rnd.randint(1, 28)) |
|
|
rnd.randint(1, 28)) |
|
|
ulic = rnd.choice(seznam_ulic) |
|
|
ulic = rnd.choice(seznam_ulic) |
|
|
print(ulic) #FIXME: pozdeji smazat, jen debug |
|
|
|
|
|
cp = rnd.randint(1, 99) |
|
|
cp = rnd.randint(1, 99) |
|
|
ulice = " ".join([ulic, str(cp)]) |
|
|
ulice = " ".join([ulic, str(cp)]) |
|
|
mesto = rnd.choice([seznam_mest]) |
|
|
mesto = rnd.choice([seznam_mest]) |
|
@ -81,7 +80,6 @@ def gen_skoly(): #TODO někdy to přepsat, aby jich bylo více |
|
|
ulice='Hluboká 42', nazev='Hutní gympl', je_zs=False, je_ss=True)) |
|
|
ulice='Hluboká 42', nazev='Hutní gympl', je_zs=False, je_ss=True)) |
|
|
skoly.append(Skola.objects.create(mesto='Humenné', stat='SK', psc='012 34', |
|
|
skoly.append(Skola.objects.create(mesto='Humenné', stat='SK', psc='012 34', |
|
|
ulice='Pltká 1', nazev='Sredná škuola', je_zs=False, je_ss=True)) |
|
|
ulice='Pltká 1', nazev='Sredná škuola', je_zs=False, je_ss=True)) |
|
|
#FIXME pridat kontaktni osobu alespon nekde |
|
|
|
|
|
global zlinska |
|
|
global zlinska |
|
|
zlinska = Skola.objects.create(mesto = 'Zlín', stat='CZ', psc='76001', |
|
|
zlinska = Skola.objects.create(mesto = 'Zlín', stat='CZ', psc='76001', |
|
|
ulice='náměstí T.G. Masaryka 2734-9', |
|
|
ulice='náměstí T.G. Masaryka 2734-9', |
|
@ -231,10 +229,14 @@ def gen_soustredeni(rnd, resitele, organizatori): |
|
|
typ=rnd.choice(['jarni', 'podzimni', 'vikend']), |
|
|
typ=rnd.choice(['jarni', 'podzimni', 'vikend']), |
|
|
datum_zacatku=datum_zacatku, |
|
|
datum_zacatku=datum_zacatku, |
|
|
datum_konce=datum_zacatku + datetime.timedelta(days=7)) |
|
|
datum_konce=datum_zacatku + datetime.timedelta(days=7)) |
|
|
for res in rnd.sample(resitele, min(len(resitele), 20)): |
|
|
ucastnici = rnd.sample(resitele, min(len(resitele), 20)) |
|
|
Soustredeni_Ucastnici.objects.create(resitel=res, soutredeni=working_sous) |
|
|
working_sous.ucastnici.set(ucastnici) |
|
|
for org in rnd.sample(organizatori, min(len(organizatori), 20)): |
|
|
#for res in rnd.sample(resitele, min(len(resitele), 20)): |
|
|
Soustredeni_Organizatori.objects.create(organizator=org, soutredeni=working_sous) |
|
|
# Soustredeni_Ucastnici.objects.create(resitel=res, soutredeni=working_sous) |
|
|
|
|
|
orgove_vyber = rnd.sample(organizatori, min(len(organizatori), 20)) |
|
|
|
|
|
working_sous.organizatori.set(orgove_vyber) |
|
|
|
|
|
#for org in rnd.sample(organizatori, min(len(organizatori), 20)): |
|
|
|
|
|
# Soustredeni_Organizatori.objects.create(organizator=org, soutredeni=working_sous) |
|
|
working_sous.save() |
|
|
working_sous.save() |
|
|
soustredeni.append(working_sous) |
|
|
soustredeni.append(working_sous) |
|
|
return soustredeni |
|
|
return soustredeni |
|
@ -250,7 +252,7 @@ def gen_rocniky(last_rocnik, size): |
|
|
rocniky.append(rocnik) |
|
|
rocniky.append(rocnik) |
|
|
return rocniky |
|
|
return rocniky |
|
|
|
|
|
|
|
|
def gen_konfery(rnd, reseni, organizatori, ucastnici, soustredeni): |
|
|
def gen_konfery(size, rnd, organizatori, resitele, soustredeni): |
|
|
konfery = [] |
|
|
konfery = [] |
|
|
for _ in range(1, size): #FIXME Tu range si změňte jak chcete, nevím, co přesně znamená size (asi Anet?) |
|
|
for _ in range(1, size): #FIXME Tu range si změňte jak chcete, nevím, co přesně znamená size (asi Anet?) |
|
|
konfera = Konfera.objects.create( |
|
|
konfera = Konfera.objects.create( |
|
@ -259,13 +261,15 @@ def gen_konfery(rnd, reseni, organizatori, ucastnici, soustredeni): |
|
|
abstrakt=lorem.paragraph(), |
|
|
abstrakt=lorem.paragraph(), |
|
|
organizator=rnd.choice(organizatori), |
|
|
organizator=rnd.choice(organizatori), |
|
|
soustredeni=rnd.choice(soustredeni), |
|
|
soustredeni=rnd.choice(soustredeni), |
|
|
reseni=rnd.choice(reseni), |
|
|
|
|
|
typ_prezentace=rnd.choice(['veletrh', 'prezentace'])) |
|
|
typ_prezentace=rnd.choice(['veletrh', 'prezentace'])) |
|
|
for res in rnd.sample(ucastnici, min(len(ucastnici), rnd.randint(3, 6))): |
|
|
ucastnici_sous = list(konfera.soustredeni.ucastnici.all()) |
|
|
Konfery_Ucastnici.objects.create(resitel=res, konfera=konfera) |
|
|
ucastnici = rnd.sample(ucastnici_sous, min(len(ucastnici_sous), rnd.randint(3, 6))) |
|
|
konfery.append(konfera) |
|
|
konfera.ucastnici.set(ucastnici) |
|
|
|
|
|
#for res in rnd.sample(ucastnici, min(len(ucastnici), rnd.randint(3, 6))): |
|
|
|
|
|
# Konfery_Ucastnici.objects.create(resitel=res, konfera=konfera) |
|
|
konfera.save() |
|
|
konfera.save() |
|
|
|
|
|
konfery.append(konfera) |
|
|
|
|
|
|
|
|
konferanode = KonferaNode.objects.create(konfera=konfera) |
|
|
konferanode = KonferaNode.objects.create(konfera=konfera) |
|
|
konferanode.save() |
|
|
konferanode.save() |
|
|
return konfery |
|
|
return konfery |
|
@ -488,7 +492,6 @@ def create_test_data(size = 6, rnd = None): |
|
|
|
|
|
|
|
|
# skoly |
|
|
# skoly |
|
|
skoly = gen_skoly() |
|
|
skoly = gen_skoly() |
|
|
#TODO Generovat soustredeni konfery |
|
|
|
|
|
|
|
|
|
|
|
# osoby |
|
|
# osoby |
|
|
osoby = gen_osoby(rnd, size) |
|
|
osoby = gen_osoby(rnd, size) |
|
@ -520,17 +523,21 @@ def create_test_data(size = 6, rnd = None): |
|
|
|
|
|
|
|
|
# generování úloh k tématům ve všech číslech |
|
|
# generování úloh k tématům ve všech číslech |
|
|
gen_ulohy_k_tematum(rnd, rocniky, rocnik_cisla, rocnik_temata, organizatori) |
|
|
gen_ulohy_k_tematum(rnd, rocniky, rocnik_cisla, rocnik_temata, organizatori) |
|
|
|
|
|
|
|
|
# FIXME: misto typu ruzne typy objektu a vnoreni do sebe |
|
|
#generování soustředění |
|
|
|
|
|
soustredeni = gen_soustredeni(rnd, resitele, organizatori) |
|
|
|
|
|
|
|
|
|
|
|
#generování konfer |
|
|
|
|
|
konfery = gen_konfery(size, rnd, organizatori, resitele, soustredeni) |
|
|
|
|
|
|
|
|
|
|
|
# TODO: nastavi správně, kolik se čeho generuje, aby rozsahy přibližně odpovídaly |
|
|
|
|
|
# FIXME: misto typu ruzne typy objektu a vnoreni do sebe (Tom nechápe, co je tímto fixme míněno) |
|
|
# TODO: vytvorit temata s ruznymi vlakny |
|
|
# TODO: vytvorit temata s ruznymi vlakny |
|
|
# TODO: nagenerovat starsim rocnikum pohadku |
|
|
# TODO: nagenerovat starsim rocnikum pohadku |
|
|
# TODO: nagenerovat články |
|
|
# TODO: nagenerovat články |
|
|
# TODO: nagenerovat konfery |
|
|
|
|
|
# TODO: vecpat obrázky všude, kde to jde |
|
|
# TODO: vecpat obrázky všude, kde to jde |
|
|
# TODO: nagenerovat nějaký strom nodů? |
|
|
|
|
|
# TODO: mezičíslo node |
|
|
# TODO: mezičíslo node |
|
|
|
|
|
# TODO: přidat ke konferám řešení a dát je do čísel |
|
|
# TODO: nahodne nagenerovat problemum reseni a prilohy reseni, hodnoceni |
|
|
|
|
|
|
|
|
|
|
|
# obecné nastavení semináře, musí být už přidané ročníky a čísla, jinak se nastaví divně |
|
|
# obecné nastavení semináře, musí být už přidané ročníky a čísla, jinak se nastaví divně |
|
|
nastaveni = Nastaveni.objects.create(aktualni_rocnik = Rocnik.objects.last(), |
|
|
nastaveni = Nastaveni.objects.create(aktualni_rocnik = Rocnik.objects.last(), |
|
|