Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]MVC w php
gennebis
post
Post #1





Grupa: Zarejestrowani
Postów: 12
Pomógł: 0
Dołączył: 21.10.2011

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


Testowo napisałem frameworka php mam jednak pewien problem ze zrozumieniem kontrolerów i zależności między nimi.

Tworzę przykładowo kontroler Articles z metodami:
- addArticle
- showArticle
- deleteArticle
- updateArticle
-showAllArticles
itd.

Teraz chciałbym wyświetlić na stronie głównej artykuły i jak to zrobić? Stworzyć kontroler PagesController a w nim np. metodę showHomepage a w niej odwołać się do kontrolera ArticlesController i metody showLastArticles? Czy może w metodzie showHomepage utworzyć instancję ArticlesModel, pobrać z niego ostatnie artykuły (np. 5) i wyrenderować dla nich widoki?

Chodzi mi też o to jak tworzyć kontrolery dla statycznych stron jak np. kontakt, 'o nas', czy ma być jeden kontroler PagesKontroler a w nim metody showHome, showContact, showAbout itd. ?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 5)
Pyton_000
post
Post #2





Grupa: Zarejestrowani
Postów: 8 068
Pomógł: 1414
Dołączył: 26.10.2005

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


  1. showPaged($id)
  2. {
  3. $page = PagesModel->getPageById($id)
  4. $this->view->set('page', $page);
  5. return $this->view->render();
  6. }
Go to the top of the page
+Quote Post
gennebis
post
Post #3





Grupa: Zarejestrowani
Postów: 12
Pomógł: 0
Dołączył: 21.10.2011

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


Ale w jakim kontrolerze miała by ta metoda być?
Go to the top of the page
+Quote Post
Pyton_000
post
Post #4





Grupa: Zarejestrowani
Postów: 8 068
Pomógł: 1414
Dołączył: 26.10.2005

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


PagesController
Go to the top of the page
+Quote Post
gennebis
post
Post #5





Grupa: Zarejestrowani
Postów: 12
Pomógł: 0
Dołączył: 21.10.2011

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


A jeszcze takie pytanie. Mam dość prosto zrobione modele. Mam np. model Accounts i kiedy chcę dodać nowe konto korzystam z metody addAccount(...). Tylko przy dodawaniu usera muszą zostać wypełnione także inna tabela. Czy w takim wypadku utworzyć instancję modelu InnaModel w AccountsModel i za jej pomocą dodać ten rekord/y?
Go to the top of the page
+Quote Post
Pyton_000
post
Post #6





Grupa: Zarejestrowani
Postów: 8 068
Pomógł: 1414
Dołączył: 26.10.2005

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


Tak, bo odwołujesz się do innego modelu.
Go to the top of the page
+Quote Post

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: 22.08.2025 - 12:56