![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 370 Pomógł: 43 Dołączył: 1.12.2007 Skąd: Kędzierzyn Koźle Ostrzeżenie: (0%) ![]() ![]() |
Kilka pytań odnośnie tworzenia aplikacji opartych o MVC:
1. Jaką funkcję spełnia dispatcher? Wyczytałem, że na podstawie danych otrzymanych z routera wywołuje odpowiednią akcję odpowiedniego kontrolera, w takim razie sprawdzenie czy da się wykonać tą konkretną akcje lub ewentualne sypnięcie błędem to też jego zadanie? 2. Jak odwoływać się do danych z routera? np. mam newsController ($kontroler z routera ma wartość 'news') i kontroler powinien utworzyć instancję klasy newsModel (znowu potrzeba wartośc $kontroler), najprościej chyba przekazać obiekt routera w konstruktorze kontrollera? dobrze myśle? 3. Jak obsługiwać dane $_POST przez kontroler, mój prosty router zwraca nazwe kontrollera, akcje do wywołania i ew. tablice z parametrami (wszystko z $_GET'a), na forum przeczytałem gdzieś, że kontroler nie powinien odwoływać się bezpośrednio do danych z tablic globalnych (właśnie np $_POST) więc jak to powinno działać? Miałem więcej pytań ale zapomniałem -.- dopisze w razie potrzeby. Narazie prosiłbym o odpowiedzi na powyższe (IMG:style_emoticons/default/snitch.gif) |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 320 Pomógł: 29 Dołączył: 3.04.2010 Ostrzeżenie: (20%) ![]() ![]() |
2. Jak odwoływać się do danych z routera? np. mam newsController ($kontroler z routera ma wartość 'news') i kontroler powinien utworzyć instancję klasy newsModel (znowu potrzeba wartośc $kontroler), najprościej chyba przekazać obiekt routera w konstruktorze kontrollera? dobrze myśle? Jak masz konkretną klasę newsController, to logiczne, że będzie ona wywoływała newsModel. Przecież newsController nie wywoła raczej blogModel. Zmieniając $kontroler w Routerze, zmienisz i model, i kontroler, i prawdopodobnie widok. Jeśli chcesz poczytać o przekazywaniu obiektów, w poddziale Pro był temat podobny do "Globale, Singleton, Registry" - te slowa kluczowe pamiętam (IMG:style_emoticons/default/winksmiley.jpg) |
|
|
![]() ![]() |
![]() |
Aktualny czas: 15.10.2025 - 07:48 |