![]() |
![]() |
![]() ![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 278 Pomógł: 10 Dołączył: 13.02.2007 Skąd: Rybnik Ostrzeżenie: (0%) ![]() ![]() |
Witam,
Ciągle zastanawiam się, czy dobrze interpretuję zasadę MVC. Chciałem napisać coś takiego: KONTROLLER: Index.Controller.php: Pobiera $_GET['view'] i zwraca $this -> setView():
Następnie MODEL pobiera dane z mysql z danego projektu i zwraca:
W ostateczności Widok pobiera wszystko i generuje HTML:
Męczy mnie także pytanie, jak to wszystko połączyć, zeby działało? Chodzi o większą ilość widoków, lub modeli. Proszę mnie nie odsyłać do artykułów, bo z nich nic się (niestety) nie można dowiedzieć. Pozdrawiam, Matix: ) Ten post edytował matix 25.05.2007, 22:03:54 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Przyjaciele php.pl Postów: 1 467 Pomógł: 13 Dołączył: 22.02.2003 Ostrzeżenie: (0%) ![]() ![]() |
Widok wywołuje model aby pozyskać dane lub kontroler gdy wywołana zostanie akcja. Widok może też zostać zmieniony niezależnie od kontrolera ani modelu, np. przy zmianie kryteriów sortowania. Obsługuje "logikę wyświetlania".
Model zmienia widok, gdy sam zostanie zmieniony, nie wywołuje kontrolera. Przechowuje informacje. Obłsuguję "logikę danych". Kontroler zmienia model oraz obsługuje akcje. Kontroler to logika aplikacji. Akcja - to zapytanie do kontrolera, wywołanie kontrolera. Nie wydaje mi się też żeby kontroler decydował którą akcje wykonąć. To akcja decyduje który kontroler wywołać. Co do przykładu powyżej. ShowNews to akcja, która wywołuje kontroler News. Kontroler ten nie modyfikuje modelu, wyświetla natomiast widok, który pobiera z modelu dane. Raczej tak rysowłabym te zależności. Dlatego przygotowywanie danych do wyświetlenia już na poziomie kontrolera to troszkę wg mnie za wcześnie. To powinien zrobić widok. To taki prosty opis zależności. Widok może mieć odniesienia do akcji różnych kontrolerów. Tak samo kontroler po wywołani może zmienić widok - nie tylko zmienić aktualny widok, ale również zmienić samą instacje widoku. Tak to łaczysz. Pozdrawiam Ten post edytował Jabol 25.05.2007, 23:07:04 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 7.10.2025 - 01:02 |