Migrace: Nefunguje volání metod
Revert souboru seminar/migrations/0002_treenode_nazev.py
This commit is contained in:
		
							parent
							
								
									4f499330b1
								
							
						
					
					
						commit
						418eb7c17a
					
				
					 1 changed files with 87 additions and 17 deletions
				
			
		|  | @ -2,24 +2,94 @@ | |||
| 
 | ||||
| from django.db import migrations, models | ||||
| 
 | ||||
| # Migrace nejspíš neumí volat metody modelů: | ||||
| # https://stackoverflow.com/questions/28777338/django-migrations-runpython-not-able-to-call-model-methods#37685925 | ||||
| 
 | ||||
| def fix_RocnikNode_names(apps,schema_editor): | ||||
| 	Objects = apps.get_model('seminar', 'RocnikNode') | ||||
| 	for obj in Objects.objects.all(): | ||||
| 		obj.nazev = str(obj.rocnik)+" (RocnikNode)" | ||||
| 		obj.save() | ||||
| 
 | ||||
| def fix_CisloNode_names(apps,schema_editor): | ||||
| 	Objects = apps.get_model('seminar', 'CisloNode') | ||||
| 	for obj in Objects.objects.all(): | ||||
| 		obj.nazev = str(obj.cislo)+" (CisloNode)" | ||||
| 		obj.save() | ||||
| 
 | ||||
| def fix_MezicisloNode_names(apps,schema_editor): | ||||
| 	Objects = apps.get_model('seminar', 'MezicisloNode') | ||||
| 	for obj in Objects.objects.all(): | ||||
| 		if obj.prev: | ||||
| 			if (obj.prev.get_real_instance_class() != CisloNode and | ||||
| 				obj.prev.get_real_instance_class() != MezicisloNode): | ||||
| 					raise ValueError("Předchůdce není číslo!") | ||||
| 			posledni = obj.prev.cislo | ||||
| 			obj.nazev = "Mezičíslo po čísle"+str(posledni)+" (MezicisloNode)" | ||||
| 		elif obj.root: | ||||
| 			if obj.root.get_real_instance_class() != RocnikNode: | ||||
| 				raise ValueError("Kořen stromu není ročník!") | ||||
| 			rocnik = obj.root.rocnik | ||||
| 			obj.nazev = "První mezičíslo ročníku "+" (MezicisloNode)" | ||||
| 		else: | ||||
| 			print("!!!!! Nějaké neidentifikované mezičíslo !!!!!") | ||||
| 			obj.nazev = "Neidentifikovatelné mezičíslo! (MezicisloNode)" | ||||
| 		obj.save() | ||||
| 
 | ||||
| def fix_TemaVCisleNode_names(apps,schema_editor): | ||||
| 	Objects = apps.get_model('seminar', 'TemaVCisleNode') | ||||
| 	for obj in Objects.objects.all(): | ||||
| 		obj.nazev = str(obj.tema)+" (TemaVCisleNode)" | ||||
| 		obj.save() | ||||
| 
 | ||||
| def fix_KonferaNode_names(apps,schema_editor): | ||||
| 	Objects = apps.get_model('seminar', 'KonferaNode') | ||||
| 	for obj in Objects.objects.all(): | ||||
| 		obj.nazev = str(obj.konfera)+" (KonferaNode)" | ||||
| 		obj.save() | ||||
| 
 | ||||
| def fix_ClanekNode_names(apps,schema_editor): | ||||
| 	Objects = apps.get_model('seminar', 'ClanekNode') | ||||
| 	for obj in Objects.objects.all(): | ||||
| 		obj.nazev = str(obj.clanek)+" (ClanekNode)" | ||||
| 		obj.save() | ||||
| 
 | ||||
| def fix_UlohaZadaniNode_names(apps,schema_editor): | ||||
| 	Objects = apps.get_model('seminar', 'UlohaZadaniNode') | ||||
| 	for obj in Objects.objects.all(): | ||||
| 		obj.nazev = str(obj.uloha)+" (UlohaZadaniNode)" | ||||
| 		obj.save() | ||||
| 
 | ||||
| def fix_PohadkaNode_names(apps,schema_editor): | ||||
| 	Objects = apps.get_model('seminar', 'PohadkaNode') | ||||
| 	for obj in Objects.objects.all(): | ||||
| 		obj.nazev = str(obj.pohadka)+" (PohadkaNode)" | ||||
| 		obj.save() | ||||
| 
 | ||||
| def fix_UlohaVzorakNode_names(apps,schema_editor): | ||||
| 	Objects = apps.get_model('seminar', 'UlohaVzorakNode') | ||||
| 	for obj in Objects.objects.all(): | ||||
| 		obj.nazev = str(obj.uloha)+" (UlohaVzorakNode)" | ||||
| 		obj.save() | ||||
| 
 | ||||
| def fix_TextNode_names(apps,schema_editor): | ||||
| 	Objects = apps.get_model('seminar', 'TextNode') | ||||
| 	for obj in Objects.objects.all(): | ||||
| 		obj.nazev = str(obj.text)+" (TextNode)" | ||||
| 		obj.save() | ||||
| 
 | ||||
| def fix_all_names(apps,schema_editor): | ||||
| 	for objtype in [ | ||||
| 			"RocnikNode", | ||||
| 			"CisloNode", | ||||
| 			"MezicisloNode", | ||||
| 			"TemaVCisleNode", | ||||
| 			"KonferaNode", | ||||
| 			"ClanekNode", | ||||
| 			"UlohaZadaniNode", | ||||
| 			"PohadkaNode", | ||||
| 			"UlohaVzorakNode", | ||||
| 			"TextNode", | ||||
| 			]: | ||||
| 		Objects = apps.get_model('seminar', objtype) | ||||
| 		for obj in Objects.objects.all(): | ||||
| 			obj.aktualizuj_nazev() | ||||
| 			# Better save than sorry | ||||
| 			obj.save() | ||||
| 	fix_RocnikNode_names(apps,schema_editor) | ||||
| 	fix_CisloNode_names(apps,schema_editor) | ||||
| 	fix_MezicisloNode_names(apps,schema_editor) | ||||
| 	fix_TemaVCisleNode_names(apps,schema_editor) | ||||
| 	fix_KonferaNode_names(apps,schema_editor) | ||||
| 	fix_ClanekNode_names(apps,schema_editor) | ||||
| 	fix_UlohaZadaniNode_names(apps,schema_editor) | ||||
| 	fix_PohadkaNode_names(apps,schema_editor) | ||||
| 	fix_UlohaVzorakNode_names(apps,schema_editor) | ||||
| 	fix_TextNode_names(apps,schema_editor) | ||||
| 
 | ||||
| 
 | ||||
| class Migration(migrations.Migration): | ||||
| 
 | ||||
|  |  | |||
		Loading…
	
		Reference in a new issue
	
	 Pavel 'LEdoian' Turinsky
						Pavel 'LEdoian' Turinsky