Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]MVC - co przekazywać widokowi, a czego nie?
SmokAnalog
post
Post #1





Grupa: Zarejestrowani
Postów: 1 707
Pomógł: 266
Dołączył: 3.07.2012
Skąd: Poznań

Ostrzeżenie: (0%)
-----


Witajcie,

dzisiaj mam taką małą zagwostkę na temat wzorca Model View Controller. Czy powinno się przekazywać widokom instancje generowane przez modele? Innymi słowy, czy nazwa klasy ma w ogóle prawo znaleźć się w widoku?

Przykład: mamy metodę, która pobiera obiekt zalogowanego użytkownika, a w widoku wypisujemy jego login. I teraz mamy dwie możliwości:
  1. Użyć klasy w modelu, np.:

    W widoku:
    1. Witaj, <?php echo User::getLoggedIn()->login ?>!
  2. Przekazać obiekt użytkownika widokowi, np.:

    W kontrolerze:
    1. $view->user = User::getLoggedIn()


    W widoku:
    1. Witaj, <?php echo $this->user->login ?>!
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
markonix
post
Post #2





Grupa: Zarejestrowani
Postów: 2 707
Pomógł: 290
Dołączył: 16.12.2008
Skąd: Śląsk

Ostrzeżenie: (0%)
-----


Pewnie ma to jakieś wady związane np. z hermetyzacją bo jest to praktycznie zmienna globalna i każdy kontroler może ją nadpisać (co też z drugiej strony ma zalety bo zawsze ten obiekt można zaktualizować np. w czasie zmiany typu konta, do widoku pójdzie już aktualny typ konta.
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 5.10.2025 - 13:21