Trochu shrnu, co jsem se dověděl. Asi by pro začátečníka bylo dobré, kdyby trochu znal historii Djanga, která předpokládám byla asi takováto (?):
1. Nejdřív se zavedly ForeignKey a nic víc - pro m2m z toho vyplývalo obvyklé řešení s vazební tabulkou. 2. Pak někoho napadlo, že když ve vazební tabulce není nic, než 2 cizí klíče, tak ManyToManyField by byla hezká zkratka, včetně toho řešení s definováním na jedné straně (což je zajímavá a asi bezva věc - jak píše Hynek). Udělala se pro to i podpora do základního admin formuláře, ale jen na té jedné straně, kde se to definuje. 3. Pak někoho napadlo, že často v té vazební tabulce bude sloupců víc (než jen 2 cizí klíče) a udělalo se (s předchozím nepříliš kompatibilní) řešení s through=.. Od podpory v základním admin formuláři se upustilo. Někde časově mezitím vznikly Inliny, což je jistě bezva věc, pro tento účel. Teď by se asi dalo filozofovat, co dál, nabízejí se dvě věci: - buď to nechat jak to je, a nechat lidi, ať si nad to dopíšou, co chtějí; - nebo přikročit k: 4. Prohlásit řešení bez through= za obsolete, zlikvidovat ho v budoucích verzích Djanga. Bylo by to asi trochu bolestné, nicméně veškerá další řešení, která by se nad tím dělala (v jednotlivých aplikacích i v nadstavbových balících) by byla jednotně koncipovaná. .... zatím všem vřelé díky .... -- -- E-mailová skupina [email protected] Správa: http://groups.google.cz/group/django-cs --- Tuto zprávu jste obdrželi, protože jste přihlášeni k odběru skupiny django-cs ve Skupinách Google. Chcete-li zrušit odběr skupiny a přestat dostávat e-maily ze skupiny, zašlete e-mail na adresu [email protected]. Chcete-li zobrazit tuto diskusi na webu, navštivte https://groups.google.com/d/msgid/django-cs/ee405a62-9199-48c4-989c-6b8e4ce6e627%40googlegroups.com. Další možnosti najdete na adrese https://groups.google.com/d/optout.
