Dnes, za přítomnosti dvou svědků Tomáš Domes slíbil, že slovník v testutils.py, ve kterém používá jako klíče přirozená čísla, přepíše na normální list. Budiž. Zde jsem také skončil 21. 6. léta Páně 2019 s první vlnou debugování. Bože žehnej těm, kteří toto debugovací břímě převezmou.
This commit is contained in:
		
							parent
							
								
									7c14bf4100
								
							
						
					
					
						commit
						49f5ce3d91
					
				
					 1 changed files with 14 additions and 15 deletions
				
			
		|  | @ -7,7 +7,7 @@ import django.contrib.auth | |||
| from django.db import transaction | ||||
| import unidecode | ||||
| 
 | ||||
| from seminar.models import Skola, Resitel, Rocnik, Cislo, Problem, Reseni, PrilohaReseni, Nastaveni, Soustredeni, Soustredeni_Ucastnici, Soustredeni_Organizatori, Osoba, Organizator, Prijemce, Tema, Uloha, Konfera, KonferaNode, TextNode, UlohaVzorakNode, RocnikNode, CisloNode, TemaVCisleNode, Text | ||||
| from seminar.models import Skola, Resitel, Rocnik, Cislo, Problem, Reseni, PrilohaReseni, Nastaveni, Soustredeni, Soustredeni_Ucastnici, Soustredeni_Organizatori, Osoba, Organizator, Prijemce, Tema, Uloha, Konfera, KonferaNode, TextNode, UlohaVzorakNode, RocnikNode, CisloNode, TemaVCisleNode, Text, Hodnoceni | ||||
| 
 | ||||
| from django.contrib.flatpages.models import FlatPage | ||||
| from django.contrib.sites.models import Site | ||||
|  | @ -178,9 +178,7 @@ def gen_ulohy_do_cisla(rnd, ci, organizatori, resitele, slovnik_cisel, size): | |||
| 			p.ulohavzoraknode = uloha_vzorak | ||||
| 			 | ||||
| 
 | ||||
| 			for org in rnd.sample(organizatori, poc_op): | ||||
| 				p.opravovatele_ulohas.objects.create(org)  | ||||
| 	#		p.opravovatele.set(rnd.sample(organizatori,poc_op)) | ||||
| 			p.opravovatele.set(rnd.sample(organizatori,poc_op)) | ||||
| 			p.save() | ||||
| 
 | ||||
| 			# reseni ulohy | ||||
|  | @ -188,13 +186,11 @@ def gen_ulohy_do_cisla(rnd, ci, organizatori, resitele, slovnik_cisel, size): | |||
| 			#poc_resitel = rnd.randint(1, 3) <- k čemu je himbajs tahle proměnná?  | ||||
| 			# vybereme nahodny vzorek resitelu o delce poctu reseni  | ||||
| 			# (nebo skoro vsechny resitele, pokud jich je mene nez pocet reseni) | ||||
| 			res_vyber = rnd.sample(resitele, min(poc_reseni, len(resitele) - 2)) | ||||
| 			for resitel in res_vyber: | ||||
| 			for ri in range(poc_reseni): | ||||
| 				res_vyber = rnd.sample(resitele, rnd.randint(1, 5)) | ||||
| 				# problem a resitele přiřadíme později, ManyToManyField | ||||
| 				# se nedá vyplnit v create() | ||||
| 				res = Reseni.objects.create(forma=rnd.choice(Reseni.FORMA_CHOICES)) | ||||
| 				res.resitele = [resitel] | ||||
| 				res.problem = p | ||||
| 				res.save() | ||||
| 				hod = Hodnoceni.objects.create( | ||||
| 					body=rnd.randint(0, p.max_body), | ||||
|  | @ -286,6 +282,7 @@ def gen_cisla(rnd, rocniky): | |||
| 				verejne_db=True | ||||
| 			) | ||||
| 			node2 = CisloNode.objects.create(cislo = cislo, succ = node) | ||||
| 			cislo.save() | ||||
| 			node = node2 | ||||
| 			if otec: | ||||
| 				otec = False | ||||
|  | @ -296,7 +293,7 @@ def gen_cisla(rnd, rocniky): | |||
| 		slovnik_rocnik_cisla[rocnik] = slovnik_cisel | ||||
| 	return slovnik_rocnik_cisla | ||||
| 
 | ||||
| def gen_temata(rocniky, slovnik_rocnik_cisla): | ||||
| def gen_temata(rnd, rocniky, slovnik_rocnik_cisla, organizatori): | ||||
| 	jake = ["Hravé", "Fyzikální", "Nejlepší", "Totálně masakrální", | ||||
| 					"Šokující", "Magnetické", "Modré", "Překvapivé",  | ||||
| 					"Plasmatické", "Novoroční"] | ||||
|  | @ -328,13 +325,14 @@ def gen_temata(rocniky, slovnik_rocnik_cisla): | |||
| 				konec_tematu = min(rnd.randint(ci, 7), len(slovnik_cisel)) | ||||
| 				for i in range(ci, konec_tematu+1): | ||||
| 					node = TemaVCisleNode.objects.create(tema = t) | ||||
| 					otec = slovnik_cisel[i].CisloNode | ||||
| 					otec = slovnik_cisel[i].cislonode | ||||
| 					otec_syn(otec, node) | ||||
| 
 | ||||
| 				t.opravovatele=rnd.sample(organizatori, poc_op) | ||||
| 				t.opravovatele.set(rnd.sample(organizatori, poc_op)) | ||||
| 				t.save() | ||||
| 				temata[n] = (ci, konec_tematu, t) | ||||
| 		slovnik_rocnik_temata[rocnik] = temata | ||||
| 	return slovnik_rocnik_temata | ||||
| 
 | ||||
| 
 | ||||
| def gen_ulohy_k_tematum(rocniky, slovnik_rocnik_cisla, slovnik_rocnik_temata): #Tahle funkce je nedodělaná | ||||
|  | @ -359,15 +357,16 @@ def gen_ulohy_k_tematum(rocniky, slovnik_rocnik_cisla, slovnik_rocnik_temata): # | |||
| 	for rocnik in rocniky: | ||||
| 		slovnik_cisel = slovnik_rocnik_cisla[rocnik] | ||||
| 		slovnik_temat = slovnik_rocnik_temata[rocnik] | ||||
| 		for ci, cislo in slovnik_cisel.items()[:-2]: | ||||
| 			mozna_tema_vcn = cislo.CisloNode.first_child | ||||
| 		for ci in list(slovnik_cisel)[:-2]: | ||||
| 			cislo = slovnik_cisel[ci]	 | ||||
| 			mozna_tema_vcn = cislo.cislonode.first_child | ||||
| 			while mozna_tema_vcn != None: | ||||
| 				if type(mozna_tema_vcn) != TemaVCisleNode: | ||||
| 					continue | ||||
| 				else: | ||||
| 					tema = mozna_tema_vcn.tema | ||||
| 					 | ||||
| 				if not slovnik_temat[int(tema.kod)][1] >= ci+2: | ||||
| 				if not slovnik_temat[int(tema.kod)][1] >= ci+2: # Dnes, za přítomnosti dvou svědků Tomáš Domes slíbil, že tento slovník, ve kterém používá jako klíče přirozená čísla, přepíše na normální list. Budiž. Zde jsem také skončil 21. 6. léta Páně 2019 s první vlnou debugování. Bože žehnej těm, kteří toto debugovací břímě převezmou. | ||||
| 					continue | ||||
| 					 | ||||
| 				for i in range(1, rnd.randint(1, 4)): | ||||
|  | @ -477,7 +476,7 @@ def create_test_data(size = 6, rnd = None): | |||
| 	 | ||||
| 	# generování témat, zatím v prvních třech číslech po jednom | ||||
| 	# FIXME: více témat | ||||
| 	slovnik_rocnik_temata = gen_temata(rocniky, slovnik_rocnik_cisla) | ||||
| 	slovnik_rocnik_temata = gen_temata(rnd, rocniky, slovnik_rocnik_cisla, organizatori) | ||||
| 	 | ||||
| 	# generování úloh k tématům ve všech číslech | ||||
| 	gen_ulohy_k_tematum(rocniky, slovnik_rocnik_cisla, slovnik_rocnik_temata) | ||||
|  |  | |||
		Loading…
	
		Reference in a new issue
	
	 Martin Z. (Zimamazim)
						Martin Z. (Zimamazim)