![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 116 Pomógł: 0 Dołączył: 19.09.2004 Skąd: Uć Ostrzeżenie: (0%) ![]() ![]() |
witam
jest tak: mam strone, ktora zawiera w sobie: - 3 bloki po lewej stronie - 2 blok glowne - 2 bloki po prawej stronie bloki to zmienne smarty do ktorych sa przypisywane konkretne wypelnione w odpowiednim widoku szablony. Doszedlem do tego ze chcac wypelnic na raz wszystkie bloki trzeba uzyc ActionChain, i tak zrobilem. Gra gitara, ale oczywiscie mam troche wieksze wymagania (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) Chcialbym zeby mozna bylo, piszac prosty plik xml, wsadzic do dowolnego bloku dowolne "cos". Tzn ze raz w bloku L1 (lewa strona, pierwszy od gory) jest efekt akcji GetNews, innym razem akcja TopTen czy tam inne bzdury. I tak z wszystkimi blokami. Oczywiiscie nie wsyzstie akcje mozna uzyc w bloku. I teraz wymyslilem takie cos, ze pisze sobie ten plik np w formacie:
gdzie wszystko w sekcji <block> to parametry akcji wywolywanych w ActionChain. Przy probie wykonywania kazdej akcji, sprawdzam czy w pliku jest sekcja request dotyczaca tej akcji. jesli jest to na podstawie jej zawarrosci tworze ActionChain i wykonuje, uzyskujac wszystkie potrzebne informacje, ktore w widoku przypisuje do konkretnych blokow, Czy to wyglada sensownie? Czy wogole do d... rozwiazanie? A moze jakies sugestie jak to zrobic? Z gory dzieki Ten post edytował Leezard 7.03.2005, 18:45:33 |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 57 Pomógł: 0 Dołączył: 21.08.2003 Skąd: Będzin Ostrzeżenie: (0%) ![]() ![]() |
A ja bym to zrobil troche inaczej...
Tworzysz sobie klase widoku (np ViewUsers) gdzie implementujesz wlasciwa funkcjonalnosc. Nastepnie tworzysz sobie klasy potomne, np: ViewUsersWithNews ViewUsersWithBanners czy cos w tym stylu.. i teraz tam implementujesz konkretne ustawienia wygladu. W konfiguracji odwolujesz sie tylko do tych klas potomnych:
mozna ten wzorzec sobie jeszcze rozbudowac/zmodyfikowac.. np:
...no chyba, ze to wszystko chcesz miec koniecznie w konfigu ;>)) Ten post edytował marcin96 16.03.2005, 10:10:22 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 18.09.2025 - 13:51 |