![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 3 Pomógł: 0 Dołączył: 7.06.2012 Ostrzeżenie: (0%) ![]() ![]() |
Witam serdecznie,
Staram się zrozumieć poprawnie ZendFramework i po przestudiowaniu kilku artykułów oraz pracy nad pierwszy prostym projektem nasuwa mi się kilka pytań. Jako, że zależy mi aby programować zgodnie z konwencją wzorca oraz frameworka chciałbym to wyjaśnić. 1) Jaka jest dokładnie rola Bootstrap'a jeśli chodzi o inicjowanie danych? Skoro inicjujemy tam np. Doctype to z tego co rozumiem powinno się tam inicjować "globalne" funkcje, które posłużą we wszystkich (większości) widokach. 2) Gdzie w projekcie podczas wywołania w Bootstrap _init... będą widoczne te wartości? Na pewno w widokach, ale czy powinno (można) używać ich także w kontrolerach? 3) W jaki sposob prawidlowo powinienem zaladowac plik JSON do widoku? Rozumiem, ze powinienem stworzyc model, tam dodac operacje ladowania pliku i nastepnie dekodowania JSON oraz przeslac to do kontrolera a ten do widoku? Czy tak? Niezbyt rozumiem w jaki sposob przekazac dane pomiedzy modelem a kontrolerem i widokiem. Jesli ktos zna artykuly lub ma cos do polecenia to chetnie poczytam. Przepraszam, jesli pytania sa nieprecyzyjne ale jeszcze nie opanowalem dobrze terminologii OOP w ZF. Pozdrowka |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 247 Pomógł: 9 Dołączył: 20.09.2010 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
Ja też jestem początkującym ZF ale myślę że coś mogę pomóc:
1) Jeśli chodzi o Doctype to inicjowanie go w Bootstrap jest raczej zbędne, od tego jest widok i tam go wywołujesz za pomocą odpowiedniej metody helpera Zend_View:
2) metoda _init w bootstrapie jest przeznaczona do ustawiania zachowania całej aplikacji czyli jeśli chcesz załadować translator z odpowiednim językiem możesz wywołąć
3) W modelu raczej przesyłasz array`ie, które są tworzone z danych z bazy danych(i nie tylko). Model jeszcze jest odpowiedzialny za akcje kontrolera, czyli w zależności co kontroler przekaże to modelu(w parametrach metod) ten ma obrobić dane oraz przesłać w postaci array(i nie tylko). Natomiast kontroler przesyła dane do widoku, który ten przesyła do kontrolera i tak w kółko. Widok nie ma dostępy bezpośredniego do Modelu. Cala komunikacja opiera się przez kontroler. Jeśli chcesz przesłać tablice w postaci JSON do widoku to robisz w kontrolerze $this->view->assign("tablicaJSON", json_encode($array)); Mam nadzieję, że coś pomogłem Pozdrawiam ![]() Jeśli chodzi o Doctype to możesz go wywołać w widoku(w pliku .phtml) w ten sposób:
|
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 14.08.2025 - 16:14 |