Společný SignPresenter pro frontent a backend?
- Andrasin
- Člen | 29
Zdravím, učím se s Nette a programuji si v něm menší redakční
systém. Mám použitou základní adresářovou strukturu + FrontModul a
AdminModule.
Pro Front i admin budou společné uživatelské účty. SignPresenter bude
tedy pro oba moduly v podstatě stejný. Zatím to mám tak, že mám dva
presentery pro přihlašování, v každém modulu jeden. Nelíbí se mi ale
že mám dva totožné soubory a hledám způsob, jak to vyřešit. Poradí
někdo nějaké dobré řešení?
Nebo na to jdu úplně špatně a nemělo by to takhle být?
Editoval Andrasin (17. 6. 2012 22:46)
- Andrasin
- Člen | 29
Ale mě nejde o to jak na něj vytvořit link, to samozřejmě vím. Ale o to, jak zajistit abych mohl do presenteru jak ve front modulu, respektive přes URL např. http://adresa.cz/sign/in a stejně tak z adminu http://adresa.cz/admin/sign/in. Jako by každý z modulů měl svůj vlastní SignPresenter, ale bude se využívat jen jeden soubor a 2 různé šablony.
- vvoody
- Člen | 910
Jeden podedit od druheho nieje moc sikovne. Ked bude treba zmenit logiku toho „rodicovskeho“ a zachvoat toho druheho nastane problem. Najlepsie by bolo aby oba dedili od tretieho abstraktneho presentru, nieco ako BaseSignPresenter. Poziadavku mat to pod jednym presenterom to nesplna, ale spolocna logika je takto na jednom mieste, co je podstatnejsie ako pocet suborov ;)
Druha moznost (rozlisit modul podla akcie) tiez nic moc :) Do ktoreho modulu by sa nakoniec taky presenter umiestnil? Co ak kazdy modul ma iny layout? Ako potom docielit povodnu url adresu? To by sme museli robit aspon jednu specialnu routu len kvoli jednej stranke.
Editoval vvoody (18. 6. 2012 2:21)
- Elijen
- Člen | 171
Jasně, první možnost jsem navrhoval jako nejrychlejší variantu. S tím, že není moc čístá, souhlasím.
To, kam se presenter umístí, je víceméně jedno. Já bych to osobně dal
do FrontModule. To s tím layoutem nechápu. Každá šablona může mít
přeci vlastní layout (metoda setLayout
nebo makro
layout
). Co to má společného s URL?
- vvoody
- Člen | 910
Hej da sa nastavit layout ale pride mi to take nehezke :) mat pre kazdu akciu iny layout. Ak sa pre cely presenter zmeni layout to chapem, ale to je len vec nazoru.
Tie url: Andrasin spomenul url adresy
http://adresa.cz/sign/in
http://adresa.cz/admin/sign/in
ktore by sme s klasickou univerzalnou routou nedocielili v pripade, ze by obe prihlasovacie stranky boli v jednom presenteri. Ak postacia npr taketo url:
http://adresa.cz/sign/in
http://adresa.cz/sign/admin
tak potom neni problem.