Podezřelé semináře (#1465) #65
					 2 changed files with 53 additions and 0 deletions
				
			
		
							
								
								
									
										43
									
								
								seminar/migrations/0144_post_odstrel_vseho.py
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										43
									
								
								seminar/migrations/0144_post_odstrel_vseho.py
									
									
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,43 @@ | |||
| # Generated by Django 4.2.16 on 2024-11-03 01:55 | ||||
| 
 | ||||
| from django.db import migrations | ||||
| 
 | ||||
| # Myšlenka: Tahle migrace o sobě prohlašuje, že závisí na všem, co se do téhle chvíle stalo. To má dva důsledky: | ||||
| # 1. V okamžiku, kdy tahle migrace proběhne, tak už máme model ve stavu který očekáváme. IOW slouží jako bariéra, za kterou nemůžou přetéct úpravy ostatních aplikací (hlavně těch našich) | ||||
| # 2. Zároveň ale tvrdíme, že k tomu, aby tahle migrace proběhla, potřebujeme (potenciálně relativně staré) verze cizích aplikací, což způsobí uspořádání opačným směrem: DB změny cizích aplikací naopak proběhnou až po této migraci | ||||
| #     Vzhledem k tomu, že by i naše předchozí aplikace měly záviset na těchto změnách, tak tím efektivně vynucujeme zachování stavu pro ty mezilehlé migrace, které možná (chybou) nedokumentovaně spoléhají na to, jak vypadají cizí aplikace. | ||||
| # Plán do budoucna: Jakmile tahle migrace proběhne na všech myslitelných databázích, můžeme její předchůdce prostě smazat a nahradit nějakou výrazně snazší sadou migrací, která jen vygeneruje správně tabulky a závislosti podle aktuálního modelu. | ||||
| #  - To se ve skutečnosti vesměs už stalo, v odstřelených aplikacích jsou modely stejně všechny „nové s daty spadlými z nebe“. Je moc pozdě v noci, ale myslím si, že prostě bude stačit smazat závislosti na migracích v `seminar`i a celou aplikaci `seminar` zrušit. (Největší problém je to při nasazování DB z nuly např. u generování testdat…) | ||||
| # Je otázka, jestli tahle migrace nemá bydlet ve `various` či jinde, aby se dala smazat celá složka `seminar`. | ||||
| 
 | ||||
| class Migration(migrations.Migration): | ||||
| 
 | ||||
|     dependencies = [ | ||||
|         ('admin', '0003_logentry_add_action_flag_choices'), | ||||
|         ('auth', '0012_alter_user_first_name_max_length'), | ||||
|         ('authtoken', '0004_alter_tokenproxy_options'), | ||||
|         ('contenttypes', '0002_remove_content_type_name'), | ||||
|         ('flatpages', '0001_initial'), | ||||
|         ('galerie', '0013_post_split_soustredeni'), | ||||
|         ('header_fotky', '0001_initial'), | ||||
|         ('korektury', '0024_vic_orgu_k_pdf'), | ||||
|         ('novinky', '0004_alter_novinky_id'), | ||||
|         ('odevzdavatko', '0009_odstrel_treenode_post'), | ||||
|         ('personalni', '0017_odstrel_treenode_post'), | ||||
|         ('prednasky', '0018_post_split_soustredeni'), | ||||
|         ('reversion', '0002_add_index_on_version_for_content_type_and_db'), | ||||
|         ('seminar', '0143_odstrel_treenode_post'), | ||||
|         ('sessions', '0001_initial'), | ||||
|         ('sifrovacka', '0006_personalni_post_migrate'), | ||||
|         ('sites', '0002_alter_domain_unique'), | ||||
|         ('sitetree', '0002_alter_treeitem_parent_alter_treeitem_tree'), | ||||
|         ('soustredeni', '0010_tvorba_post'), | ||||
|         ('taggit', '0006_rename_taggeditem_content_type_object_id_taggit_tagg_content_8fc721_idx'), | ||||
|         ('treenode', '0003_odstrel_treenode_post'), | ||||
|         ('tvorba', '0005_odstrel_treenode_post'), | ||||
|         ('various', '0006_tvorba_post'), | ||||
|         ('vyroci', '0001_initial'), | ||||
|     ] | ||||
| 
 | ||||
|     operations = [ | ||||
|     ] | ||||
|  | @ -249,6 +249,16 @@ class ReseniNode(TreeNode): | |||
| 	def getOdkazStr(self): | ||||
| 		return str(self.reseni) | ||||
| 
 | ||||
| # LEdoian: Můžu prostě odstřelit Text a Obrázek do aplikace `treenode`, kam podle mě | ||||
| # stejně patří? (Myšlenka, proč by tam měly patřit: tak, jak teď jsou je stejně | ||||
| # využívají jen TreeNody a žádné rozhraní k nim stejně není, takže aktuálně | ||||
| # použít nejdou (jako zbytek TN) a jejich sémantika pro „společnou tvorbu čísla | ||||
| # na web a PDF“ je ze stejné školy. A taky kvůli nemíchání – pokud vbrzku bude | ||||
| # potřeba nějaký podobný model, navrhuji ho udělat znovu a klidně úplně stejně, | ||||
| # staré věci pak buď zůstanou skryté, nebo je datově namigrujeme – taková | ||||
| # migrace bude snadná.) – Jidáš: jo, a napiš tam tyhle myšlenky do komentáře. | ||||
| # (zhruba přepis diskuse ve web-dev, 2024-10-30.) | ||||
| 
 | ||||
| class Text(SeminarModelBase): | ||||
| 	class Meta: | ||||
| 		db_table = 'seminar_texty' | ||||
|  |  | |||
		Loading…
	
		Reference in a new issue