![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 84 Pomógł: 2 Dołączył: 16.04.2007 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
Znalazłem w internecie ciekawy tutorial odnośnie Zend_Navigaton -> http://www.zendcasts.com/zend_navigation-d...crumbs/2009/06/ . Z tego tytułu też mam pytania, czy aby zaprezentowane kod na tej stronie jest aktualny (artykuł pochodzi z 2009 roku)? Chciałbym wiedzieć, aby później nie błądzić. Drugie z moich pytań to z czego mogę skorzystać, aby odnośniki nie były układane po nazwie kontrolera, akcji i samemu je 'składać' np. aby adres http://localhost/uzytkownicy/rejestracja mógł wyświetlać się pod adresem http://localhost/rejestracja. Z góry dziękuję za pomoc. W pliku application/layouts/scripts/layout.phtml W pliku Boostrap.php umieszczam:
Plik XML : application/configs/navigation.xml
|
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 57 Pomógł: 4 Dołączył: 6.10.2005 Ostrzeżenie: (0%) ![]() ![]() |
Hej,
musisz inaczej napisac ten plik xml umieszczac cos w stylu :
czyli zamiast <uri> podawac kontroler i akcje, a jak chcesz 'skladac po swojemu' musisz ustawiać routery czyli dajmy na to :
w apllication.ini, a w xmlu ustawiasz router na "homepage" czyli
wtedy Ci się wygeneruje link homepage.html -------------------- Zend Certified Engineer
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 84 Pomógł: 2 Dołączył: 16.04.2007 Ostrzeżenie: (0%) ![]() ![]() |
Dziękuje bardzo za rozwiązanie. Działa jak należy. Już dałem plusik:) Mam jeszcze pytanie o te trasy. Do pliku application.ini dodałem dwie trasy: (od razu tutaj pytanie, czy nie da się tego inaczej zrobić bo przy dużej stronie sporo tych tras wyjdzie)
Kod [..] resources.router.routes.rejestracja.route = "rejestracja.html" resources.router.routes.rejestracja.defaults.module = "default" resources.router.routes.rejestracja.defaults.controller = "uzytkownicy" resources.router.routes.rejestracja.defaults.action = "rejestracja" resources.router.routes.lista.route = "lista.html" resources.router.routes.lista.defaults.module = "default" resources.router.routes.lista.defaults.controller = "uzytkownicy" resources.router.routes.lista.defaults.action = "listaUzytkownikow" [..] Do pliku .xml dodałem zaś
Odnośnik rejestracja.html działa jak należy, ale z kolei na stronie lista.html wyświetla mi komunikat, że akcja "listauzytkownikow" nie istnieje. Może problem jest w tym, że nazwa akcji jest dwuczłonowa tzn. składającą się z dwóch słów i w nazwie listaUzytkownikow zamienia wielką literę U na małą? Informacja o błędzie: Kod Exception information: Message: Action "listauzytkownikow" does not exist and was not trapped in __call() Stack trace: #0 C:\xampp\php\PEAR\Zend\Controller\Action.php(518): Zend_Controller_Action->__call('listauzytkownik...', Array) #1 C:\xampp\php\PEAR\Zend\Controller\Dispatcher\Standard.php(295): Zend_Controller_Action->dispatch('listauzytkownik...') #2 C:\xampp\php\PEAR\Zend\Controller\Front.php(954): Zend_Controller_Dispatcher_Standard->dispatch(Object(Zend_Controller_Request_Http), Object(Zend_Controller_Response_Http)) #3 C:\xampp\php\PEAR\Zend\Application\Bootstrap\Bootstrap.php(97): Zend_Controller_Front->dispatch() #4 C:\xampp\php\PEAR\Zend\Application.php(366): Zend_Application_Bootstrap_Bootstrap->run() #5 C:\xampp\htdocs\SiteZend\public\index.php(26): Zend_Application->run() #6 {main} Request Parameters: array ( 'module' => 'default', 'controller' => 'uzytkownicy', 'action' => 'listaUzytkownikow', ) ---EDIT--- Wydaje mi się, że jest to błąd Zend'a, w kontrolerze jak zamienię nazwę akcji na wszystkie małe litery to działa prawidłowo. Ten post edytował CzarnyGsm 21.09.2011, 17:33:43 |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 580 Pomógł: 85 Dołączył: 25.03.2010 Skąd: Skrzyszów :) Ostrzeżenie: (0%) ![]() ![]() |
1)It's not a bug, it's a feature!
resources.router.routes.lista.defaults.action = "lista-uzytkownikow" 2)Jeśli będziesz w stanie wymyśleć bardziej ogólne trasy to będzie ich mniej ![]() |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 25.06.2025 - 16:59 |