Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [code igniter] Kilka kontrolerów na stronie, Jak to zrobić?
hevellius
post 1.10.2007, 00:40:19
Post #1





Grupa: Zarejestrowani
Postów: 42
Pomógł: 0
Dołączył: 19.06.2006

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


Witam, zwracam się z prośbą o radę w kwestii budowania strony na CI

Przykładowo mam szablon strony głównej, w footerze jest lista linków czerpana z bazy danych(którą można edytować w panelu admina), to samo z inną listą linków w headerze, w środku strony jest również listwa najnowszych newsów, wizytówek userów, plus losowo wyświetlana reklama - W tym momencie główny kontroler pobiera globalne dane jak tytuł strony itp, wyświetla główny szablon. Z tym sobie radzę jeszcze ale wiadomo osobny "pakiet" mvc mają newsy, wizytówki, reklama, linki headera, linki stopki i nagłówka: daje to łącznie 5 dotatkowych kontrolerów do uruchomienia.

W jaki sposób "poumieszczać" poszczególne kontrolery w odpowiednich divach głównego szablonu? Wiem że pewnie to jest trywialne pytanie ale zaciąłem się przy nim jak głupi, był post o tym na forum ale nic mi nie wytłumaczył, na oficjalnym wiki nic nie znalazłem(mój angielski od pewnego czasu jest słabiutki z powodu długiego nieużywania wstydnis.gif ) a nie chcę żeby główny kontroler zarządzal wszystkimi modelami i widokami, dlatego proszę was o pomoc

wystarczy opis jak to zrobić mniej więcej, mały skrawek kodu obrazujący to, link do opisu, wszystko jedno co mnie nakieruje

pozdrawiam


ps. mam nadzieję że nie powielam tematu

edit:
poszukałem trochę, jest fajna opcja na forum CI:
http://codeigniter.com/wiki/Modular_Separation/

pościągałem pliki, powrzucałem wszystko jak trzeba ale albo jestem zbyt zmęczony/ciemny(skreśl niepotrzebne) ale no nie widziałem tam opisu jak to wstawić na stronę:) - Co zrobić żeby załadować główny kontroler i potem np do danej warstwy wrzucić moduł "newsy", "reklama" czy "logowanie"?

Ten post edytował hevellius 1.10.2007, 01:46:14
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 4)
nrm
post 1.10.2007, 11:33:33
Post #2





Grupa: Zarejestrowani
Postów: 627
Pomógł: 33
Dołączył: 1.05.2005
Skąd: Katowice

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


złe podejście.

w zależności od typu rozbijasz to sobie na modele, pluginy albo biblioteki. i wywołujesz z danego kontrolera.


--------------------
Go to the top of the page
+Quote Post
hevellius
post 1.10.2007, 12:14:53
Post #3





Grupa: Zarejestrowani
Postów: 42
Pomógł: 0
Dołączył: 19.06.2006

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


ok, czyli to znaczy że tymi wszystkimi rzeczami na stronie powienien zarządzać jeden kontroler?

normanos, masz może jakąś przykładową starą swoją aplikację małą która wykorzystuje na stronie dane z więcej niż jednego widoku lub modelu?
Go to the top of the page
+Quote Post
nrm
post 1.10.2007, 12:43:16
Post #4





Grupa: Zarejestrowani
Postów: 627
Pomógł: 33
Dołączył: 1.05.2005
Skąd: Katowice

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


Nie, to znaczy, że kontroler - kontroluje przebieg. z modeli, bibliotek i pluginów wyciągasz odpowiednie dane i kierujesz do widoku.

Przykład:

- autoryzacja w 2 miejscach
- autoryzacja jako biblioteka

kontroler:
/wazne/
/dlazalogowanych/

w kontrolerze ładujesz this->load->library('auth'); i odpowiednio nią działasz.


--
Potrzebujesz wyciągnięcia danych statystycznych na wszystkie podstrony, uzywasz np. modelu.

w każdym potrzebnym kontrolerze ładujesz this->load->model('statsy');
i używasz np. $this->statsy->pokaz(); przekazując dane do widoku.


--------------------
Go to the top of the page
+Quote Post
hevellius
post 1.10.2007, 12:52:52
Post #5





Grupa: Zarejestrowani
Postów: 42
Pomógł: 0
Dołączył: 19.06.2006

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


Aaaaa, myliłem pojęcia myślałem że do każdej funkcji jest komplet widok + model + kontroler, tereaz rozumiem

dzięki normanos

pozdro
Go to the top of the page
+Quote Post

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

 



RSS Wersja Lo-Fi Aktualny czas: 31.07.2025 - 09:52