![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 103 Pomógł: 3 Dołączył: 26.07.2010 Skąd: Tychy Ostrzeżenie: (0%) ![]() ![]() |
Mianowicie czy dopuszczalne jest coś takiego że załóżmy mam kontroler setup:
Czyli w moim wypadku działa to tak iż Kontroler inicjuje model i widok następnie przepisuje do zmiennej w tablicy funkcję pobierającą dane z modelu i tą że zmienną umieszczam w widoku. Czyli jak by nie patrzeć widok pobiera zmienną z kontrolera a nie bezpośrednio z modelu? Czy ja się już pogubiłem? Praktycznie wszędzie pisze jako że widok ma pobierać dane z modelu, jak to ustosunkować w moim wypadku? Z góry dzięki za odpowiedzi (IMG:style_emoticons/default/smile.gif) Pozdrawiam. Ten post edytował Przem4S 7.03.2012, 21:24:04 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 1 527 Pomógł: 438 Dołączył: 28.06.2011 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Mimo że twoja metoda jest troszeczkę oryginalna to jest w pełni ok.
Założeniem MVC jak wiesz jest oddzielenie M od V i od C (IMG:style_emoticons/default/tongue.gif) C powiniem miec wiedze i dostęp do M i V ale M nie powinno mieć nic wspólnego z V i na odwrót - chyba że ktoś przekaże M jako zmienna do V ;P U Ciebie działa to tak, że C zbiera wszystkie dane, powołuje model zbiera z niego dane, następnie przekazuje je do widoku. Z podanego kodu wynika, że wszystko jest ok. Cytat Czyli jak by nie patrzeć widok pobiera zmienną z kontrolera a nie bezpośrednio z modelu? I tak powinno być. To C powinien dane zwrócone przez model przekazać widokowi ... Jak niby model sam miałby je przekazać widokowi... (IMG:style_emoticons/default/questionmark.gif) Gdzie tak piszą(IMG:style_emoticons/default/questionmark.gif) Oczywiście to są ząłożenia, czasem się je nieco nagina ale zasada jest właśnie taka... Cytat Poprostu masz MVP Ok skąd to się tu wzięło to nie wiem... To nie jest żadne MVP - to jest zwykłe MVC - z kodu wynika że wszelkie obowiązki są zachowane , C nic sam nie wyświetla, przekazuje dane do widoku który to powinien je wyświetlić. Gdzie tu Prezenter? @Przem4S - wszystko jest ok (IMG:style_emoticons/default/wink.gif) Dla przykładu jeszcze podam jakiś kawałek kodu zaciągnięty z przykładu kursu dla Zenda. jest to akcja "add" jednego z kontrolerów.
Jak widać kontroler sprawdza wejście, powołuje model, przekazuje jakieś dane do widoku itd... To też nie jest MVC? (IMG:style_emoticons/default/smile.gif) P.S. Nawiasem mówiąc jeśli robisz ten framework sam - polecam dodawanie do akcji kontrolerów jakiegoś postfixa - na przykład Action tak jak w zendzie - to daje tyle, że wewnątrz wtedy masz rozróżnienie czy dana metoda jest akcją czy zwykłą metodą obiektu kontrolera (której nie można wywołać jako akcji z przeglądarki) (IMG:style_emoticons/default/wink.gif) Ten post edytował Sephirus 8.03.2012, 09:38:55 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 14.10.2025 - 19:28 |