![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 10 Pomógł: 0 Dołączył: 21.04.2011 Ostrzeżenie: (0%) ![]() ![]() |
witam,
wysylam formularzem dane do kontrolera i tam mam dwie mozliwosci 1 przeslac cala tablice POST do modelu i zalaczyc widok, albo 2 w kontrolerze odczytac dane z POST, zrobic np stripslashes itp i wtedy juz gotowe wyslac do modelu i zalaczyc widok. ktora opcja jest poprawna w modelu MVC? a drugie pytanie przy okazji wiazace sie z tym. jesli bym to robil w kontrolerze i chcialbym wczytac jakas funkcje z zewnetrznego pliku to w ktorym miejscu ja includowac?
tak jest poprawnie czy moze musze to zrobic w kontruktorze? co jesli bym chcial ja uzyc w dwoch metodach? pozdrawiam |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 61 Pomógł: 4 Dołączył: 18.09.2010 Ostrzeżenie: (0%) ![]() ![]() |
W tym wypadku helper posiadałby cechy modelu jak dobrze rozumiem? Tylko że modelu innego obiektu.
|
|
|
![]()
Post
#3
|
|
Newsman Grupa: Moderatorzy Postów: 2 033 Pomógł: 290 Dołączył: 21.12.2007 Skąd: Łódź ![]() |
W tym wypadku helper posiadałby cechy modelu jak dobrze rozumiem? Tylko że modelu innego obiektu. Można tak do tego też podejść. W gruncie rzeczy formularz też może być obiektem jakiejś klasy i cała operacja walidacji sprowadza się wtedy do wywoływania odpowiednich metod na przekazanych jako parametry obiektach, przykładowo: $Form ( formularz, obiekt klasy Form ) -> przekazujemy jako argument do klasy Helper, ona sobie tam nad nim pracuje, waliduje i zwraca już obrobiony formularz do kontrolera. Ten z kolei zwalidowany obiekt $Form przesyła do modelu, który przyjmuje go jako argument i po "rozłożeniu" na czynniki pierwsze (pola w bazie danych odpowiadające wypełnionym polom formularza) zapisują do bazy i zwracają rezultat operacji. Czyli w uproszczeniu kontroler wyglądałby tak:
Tak w uproszczeniu (IMG:style_emoticons/default/wink.gif) BTW, dokładnie na takiej zasadzie działają typowe MVC, jak Symfony czy Zend.
Powód edycji: [blooregard]:
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 4.10.2025 - 15:23 |