Save hook, který aktualizuje názvy *Nodů
This commit is contained in:
		
							parent
							
								
									c661720989
								
							
						
					
					
						commit
						8ff93a0c5c
					
				
					 1 changed files with 45 additions and 10 deletions
				
			
		|  | @ -384,6 +384,10 @@ class Rocnik(SeminarModelBase): | |||
| 			cache.set(name, c, 300) | ||||
| 		return c | ||||
| 		 | ||||
| 	def save(self): | ||||
| 		super().save() | ||||
| 		# *Node.save() aktualizuje název *Nodu. | ||||
| 		self.rocniknode.save() | ||||
| 
 | ||||
| def cislo_pdf_filename(self, filename): | ||||
| 	rocnik = str(self.rocnik.rocnik) | ||||
|  | @ -477,6 +481,11 @@ class Cislo(SeminarModelBase): | |||
| 			return None | ||||
| 		return c | ||||
| 
 | ||||
| 	def save(self): | ||||
| 		super().save() | ||||
| 		# *Node.save() aktualizuje název *Nodu. | ||||
| 		self.cislonode.save() | ||||
| 
 | ||||
| @reversion.register(ignore_duplicates=True) | ||||
| class Organizator(SeminarModelBase): | ||||
| # zmena dedicnosti z models.Model na SeminarModelBase, potencialni vznik bugu | ||||
|  | @ -707,6 +716,12 @@ class Tema(Problem): | |||
| 			return "t{}".format(self.kod) | ||||
| 		return '<Není zadaný>' | ||||
| 
 | ||||
| 	def save(self): | ||||
| 		super().save() | ||||
| 		# *Node.save() aktualizuje název *Nodu. | ||||
| 		for tvcn in self_temavcislenode_set: | ||||
| 			tvcn.save() | ||||
| 
 | ||||
| class Clanek(Problem): | ||||
| 	class Meta: | ||||
| 		db_table = 'seminar_clanky' | ||||
|  | @ -727,6 +742,11 @@ class Clanek(Problem): | |||
| 			return "c{}".format(self.kod) | ||||
| 		return '<Není zadaný>' | ||||
| 
 | ||||
| 	def save(self): | ||||
| 		super().save() | ||||
| 		# *Node.save() aktualizuje název *Nodu. | ||||
| 		self.claneknode.save() | ||||
| 
 | ||||
| class Text(SeminarModelBase): | ||||
| 	class Meta: | ||||
| 		db_table = 'seminar_texty' | ||||
|  | @ -744,6 +764,12 @@ class Text(SeminarModelBase): | |||
| 	 | ||||
| 	# obrázky mají návaznost opačným směrem (vazba z druhé strany) | ||||
| 
 | ||||
| 	def save(self): | ||||
| 		super().save() | ||||
| 		# *Node.save() aktualizuje název *Nodu. | ||||
| 		for tn in self.textnode_set: | ||||
| 			tn.save() | ||||
| 
 | ||||
| 
 | ||||
| 	 | ||||
| class Uloha(Problem): | ||||
|  | @ -778,6 +804,12 @@ class Uloha(Problem): | |||
| 			return name | ||||
| 		return '<Není zadaný>' | ||||
| 
 | ||||
| 	def save(self): | ||||
| 		super().save() | ||||
| 		# *Node.save() aktualizuje název *Nodu. | ||||
| 		self.ulohazadaninode.save() | ||||
| 		self.ulohavzoraknode.save() | ||||
| 
 | ||||
| 
 | ||||
| @reversion.register(ignore_duplicates=True) | ||||
| class Reseni(SeminarModelBase): | ||||
|  | @ -959,6 +991,10 @@ class Pohadka(SeminarModelBase): | |||
| 		uryvek = self.text if len(self.text) < 50 else self.text[:(50-3)]+"..." | ||||
| 		return uryvek | ||||
| 
 | ||||
| 	def save(self): | ||||
| 		super().save() | ||||
| 		# *Node.save() aktualizuje název *Nodu. | ||||
| 		self.pohadkanode.save() | ||||
| 
 | ||||
| @reversion.register(ignore_duplicates=True) | ||||
| class Soustredeni_Ucastnici(SeminarModelBase): | ||||
|  | @ -1069,6 +1105,11 @@ class Konfera(models.Model): | |||
| 	def __str__(self): | ||||
| 		return "{}: ({})".format(self.nazev, self.soustredeni) | ||||
| 
 | ||||
| 	def save(self): | ||||
| 		super().save() | ||||
| 		# *Node.save() aktualizuje název *Nodu. | ||||
| 		self.konferanode.save() | ||||
| 
 | ||||
| 
 | ||||
| # Vazebna tabulka. Mozna se generuje automaticky. | ||||
| @reversion.register(ignore_duplicates=True) | ||||
|  | @ -1183,6 +1224,10 @@ class TreeNode(PolymorphicModel): | |||
| 			#TODO: logování | ||||
| 			return "Nepojmenovaný Treenode" | ||||
| 	 | ||||
| 	def save(self): | ||||
| 		self.aktualizuj_nazev() | ||||
| 		super().save() | ||||
| 
 | ||||
| class RocnikNode(TreeNode): | ||||
| 	class Meta: | ||||
| 		db_table = 'seminar_nodes_rocnik' | ||||
|  | @ -1194,7 +1239,6 @@ class RocnikNode(TreeNode): | |||
| 
 | ||||
| 	def aktualizuj_nazev(self): | ||||
| 		self.nazev = "RocnikNode: "+str(self.rocnik) | ||||
| 		self.save() | ||||
| 
 | ||||
| class CisloNode(TreeNode): | ||||
| 	class Meta: | ||||
|  | @ -1207,7 +1251,6 @@ class CisloNode(TreeNode): | |||
| 
 | ||||
| 	def aktualizuj_nazev(self): | ||||
| 		self.nazev = "CisloNode: "+str(self.cislo) | ||||
| 		self.save() | ||||
| 
 | ||||
| class MezicisloNode(TreeNode): | ||||
| 	class Meta: | ||||
|  | @ -1230,7 +1273,6 @@ class MezicisloNode(TreeNode): | |||
| 		else: | ||||
| 			print("!!!!! Nějaké neidentifikované mezičíslo !!!!!") | ||||
| 			self.nazev = "MezicisloNode: Neidentifikovatelné mezičíslo!" | ||||
| 		self.save() | ||||
| 
 | ||||
| class TemaVCisleNode(TreeNode): | ||||
| 	""" Obsahuje příspěvky k tématu v daném čísle """ | ||||
|  | @ -1244,7 +1286,6 @@ class TemaVCisleNode(TreeNode): | |||
| 
 | ||||
| 	def aktualizuj_nazev(self): | ||||
| 		self.nazev = "TemaVCisleNode: "+str(self.tema) | ||||
| 		self.save() | ||||
| 
 | ||||
| class KonferaNode(TreeNode): | ||||
| 	class Meta: | ||||
|  | @ -1259,7 +1300,6 @@ class KonferaNode(TreeNode): | |||
| 
 | ||||
| 	def aktualizuj_nazev(self): | ||||
| 		self.nazev = "KonferaNode: "+str(self.konfera) | ||||
| 		self.save() | ||||
| 
 | ||||
| class ClanekNode(TreeNode): | ||||
| 	class Meta: | ||||
|  | @ -1274,7 +1314,6 @@ class ClanekNode(TreeNode): | |||
| 
 | ||||
| 	def aktualizuj_nazev(self): | ||||
| 		self.nazev = "ClanekNode: "+str(self.clanek) | ||||
| 		self.save() | ||||
| 
 | ||||
| class UlohaZadaniNode(TreeNode): | ||||
| 	class Meta: | ||||
|  | @ -1289,7 +1328,6 @@ class UlohaZadaniNode(TreeNode): | |||
| 
 | ||||
| 	def aktualizuj_nazev(self): | ||||
| 		self.nazev = "UlohaZadaniNode: "+str(self.uloha) | ||||
| 		self.save() | ||||
| 
 | ||||
| class PohadkaNode(TreeNode): | ||||
| 	class Meta: | ||||
|  | @ -1303,7 +1341,6 @@ class PohadkaNode(TreeNode): | |||
| 
 | ||||
| 	def aktualizuj_nazev(self): | ||||
| 		self.nazev = "PohadkaNode: "+str(self.pohadka) | ||||
| 		self.save() | ||||
| 
 | ||||
| class UlohaVzorakNode(TreeNode): | ||||
| 	class Meta: | ||||
|  | @ -1318,7 +1355,6 @@ class UlohaVzorakNode(TreeNode): | |||
| 
 | ||||
| 	def aktualizuj_nazev(self): | ||||
| 		self.nazev = "UlohaVzorakNode: "+str(self.uloha) | ||||
| 		self.save() | ||||
| 
 | ||||
| class TextNode(TreeNode): | ||||
| 	class Meta: | ||||
|  | @ -1331,7 +1367,6 @@ class TextNode(TreeNode): | |||
| 	 | ||||
| 	def aktualizuj_nazev(self): | ||||
| 		self.nazev = "TextNode: "+str(self.text) | ||||
| 		self.save() | ||||
| 
 | ||||
| ## FIXME: Logiku přesunout do views. | ||||
| #class VysledkyBase(SeminarModelBase): | ||||
|  |  | |||
		Loading…
	
		Reference in a new issue
	
	 Pavel 'LEdoian' Turinsky
						Pavel 'LEdoian' Turinsky