![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 6 Pomógł: 0 Dołączył: 11.02.2013 Ostrzeżenie: (0%) ![]() ![]() |
Witam wszystkich!
Dopiero co zacząłem uczyć się tego frameworka. Poznałem zasady działania MVC w Zendzie, oraz połączenia z bazą danych oraz proste wybieranie danych z bazyza pomocą metody fetchAll(). Mam pytanie dotycząće wyświetlania kontrolerów i akcji z bazydanych. Otóż mamy 3 kontrolery i ich 8 akcji (razem): azja/chiny azja/japonia azja/tajlandia europa/polska europa/niemcy europa/ukraina afryka/egipt Czy muszę tworzyć wszystkie akcje i w każdej z nich wybierać dane i przekazywac je do widoku? Zawsze zapytanie praktycznie bede mial takie same wiec nie da sie jakos obejsc i stworzyc jedną akcję w której będziemy tylko zmieniac pseudokod SQL dotycząćy danego kraju lub kontrolera? W tym przypadku fajnie bybylo mieć jakos 1 kontroler i 1 akcję. Wiem moze wariat jestem ale zaczynam tą naukę i we wcześniejszym projekcie ktory robilem OOP bez żadnego fw mialem 1 strone np. page.php gdzie zawsze miałem przekazany argument, zmienną ktora byla dodawana jaki to ma byc rekord z bazdy danych. I tak mi się potem wyswietlała strona. |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 6 381 Pomógł: 1116 Dołączył: 30.08.2006 Ostrzeżenie: (0%) ![]() ![]() |
Daj sobie spokój z jakimiś książkami które zazwyczaj są ograniczonym przedrukiem dokumentacji. Jeżeli korzystasz z Zend_Application możesz dodać routing do pliku .ini
Teraz pod
Będziesz miał wartość. Możesz też definiować domyślną w kontrolerze: $kontynent = $this->getRequest()->getParam('kontynent', 'Europa'); Do bazy (w mapperze) możesz dodać jakieś metody w stylu fetchAllByCountry(), fetchAllByContinent() albo zdać się na magię (Zend_Db potrafił to przekształcić to na kolumny). Tak w skrócie. Aha. Do .htaccess nie musisz dodawać. Będą działać adresy http://localhost/index.php/kraje/pokaz... Zobacz mój artykuł ze stopki o podstawach Zenda. Ten post edytował viking 3.03.2014, 10:13:51 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 14.10.2025 - 19:13 |