Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [ZF]Konflikt routerów z nawigacją
IceManSpy
post 12.06.2011, 10:33:17
Post #1





Grupa: Zarejestrowani
Postów: 1 006
Pomógł: 111
Dołączył: 23.07.2010
Skąd: Kraków

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


Witam

Zrobiłem proste menu (bez okruszków chleba smile.gif ) z bloga Batman'a:
http://blog.wilgucki.pl/2009/10/zendnaviga...ymy-menu-i.html
Tylko trochę prostsze:
  1. <?php
  2. return array(
  3. 'label' => 'Lista artykułów',
  4. 'module' => 'admin',
  5. 'controller' => 'article',
  6. 'action' => 'index'
  7. ),
  8. 'label' => 'Dodaj artykuł',
  9. 'module' => 'admin',
  10. 'controller' => 'article',
  11. 'action' => 'add'
  12. ),
  13. 'label' => 'Edytuj artykuł',
  14. 'module' => 'admin',
  15. 'controller' => 'article',
  16. 'action' => 'edit'
  17. ),
  18. 'label' => 'Usuń artykuł',
  19. 'module' => 'admin',
  20. 'controller' => 'article',
  21. 'action' => 'delete'
  22. ),
  23. 'label' => 'Wyloguj się',
  24. 'module' => 'admin',
  25. 'controller' => 'index',
  26. 'action' => 'logout'
  27. )
  28. );
  29. ?>

Dodałem odpowiednie dane do boostrapa i layout'u. Wszystko działa super. Czas na naukę routerów biggrin.gif
Więc w boostrapie dopisałem takie coś:
  1. public function _initRoutes()
  2. {
  3. $router = Zend_Controller_Front::getInstance()->getRouter();
  4. $router->addRoute('lista',new Zend_Controller_Router_Route
  5. ('admin/lista',
  6. array('action'=>'index','controller'=>'article','module'=>'admin')));
  7. return $router;
  8. }

Router działa, ja wpiszę się w adresie admin/lista , tylko że zastępuje on wszystkie linki w menu. Czyli wszystkie mają w sobie admin/lista . Jak i gdzie to naprawić? sad.gif

P.S. Menu lepiej trzymać w pliku php, czy XML? Czy to bez różnicy?


--------------------
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
pawv
post 13.06.2011, 07:33:59
Post #2





Grupa: Zarejestrowani
Postów: 25
Pomógł: 5
Dołączył: 9.02.2011
Skąd: warszawa

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


  1. <?php
  2. return array(
  3. 'label' => 'Lista artykułów',
  4. 'module' => 'admin',
  5. 'controller' => 'article',
  6. 'action' => 'index',
  7. 'route' => 'default'
  8. ),
  9. 'label' => 'Dodaj artykuł',
  10. 'module' => 'admin',
  11. 'controller' => 'article',
  12. 'action' => 'add',
  13. 'route' => 'default'
  14. ),
  15. 'label' => 'Edytuj artykuł',
  16. 'module' => 'admin',
  17. 'controller' => 'article',
  18. 'action' => 'edit',
  19. 'route' => 'default'
  20. ),
  21. 'label' => 'Usuń artykuł',
  22. 'module' => 'admin',
  23. 'controller' => 'article',
  24. 'action' => 'delete',
  25. 'route' => 'default'
  26. ),
  27. 'label' => 'Wyloguj się',
  28. 'module' => 'admin',
  29. 'controller' => 'index',
  30. 'action' => 'logout',
  31. 'route' => 'default'
  32. )
  33. );
  34. ?>


natomiast jeżeli chciałbyś mieć ustawiony link w menu do strony która ma ustawiony routing musisz wpisać nazwę tego routingu zamiast 'default'

  1. 'label' => 'Wyloguj się',
  2. 'module' => 'admin',
  3. 'controller' => 'index',
  4. 'action' => 'list',
  5. 'route' => 'list'
  6. )
Go to the top of the page
+Quote Post

Posty w temacie


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: 14.08.2025 - 21:57