Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [ZF]routing + funkcja url
klapaucius
post
Post #1





Grupa: Zarejestrowani
Postów: 223
Pomógł: 3
Dołączył: 4.07.2009
Skąd: Kraków

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




Od razu zaznaczam, że dopiero uczę się ZF. Napotkałem na następujący problem. Mianowicie posiadam np. kontroler index, a w nim dwie akcje: akcja1 i akcja2. I do akcji akcja1 posiadam ustawiony następujący routing w pliku application.ini:

Kod
resources.router.routes.index_akcja1.route = "akcja1.html"
resources.router.routes.index_akcja1.defaults.controller = "index"
resources.router.routes.index_akcja1.defaults.action = "akcja1"


I teraz chcę w widoku akcji1 stworzyć link do akcji2 więc robię następujący url:

  1. $this->url(array('controller' => 'index', 'action' => 'akcja2'));


I otwierając ten widok standardowo za pomocą url: aplikacja/public/index/akcja1, wartosc tej funkcji jest poprawna. Natomiast wchodząc z adresu "routingowanego" aplikacja/public/akcja1.html, to owa funkcja url zwraca jako wartosc adres obecnege widoku (aplikacja/public/akcja1.html).

Dlaczego tak jest?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
karolrynio
post
Post #2





Grupa: Zarejestrowani
Postów: 144
Pomógł: 25
Dołączył: 2.02.2009

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


Ok, już rozumiem Twój problem.
Masz 2 rozwiązania: dla każdej akcji definiować nowy routing jeśli jest bardzo niestandardowy.
Ale jeśli chcesz ustawić sobie linki w formie: /{nazwa_akcji}.html
To możesz spróbować w application.ini:
Kod
resources.router.routes.index_akcja1.route = ":action.html"


Wtedy powinno chyba zadziałać:
  1. $this->url(array('controller' => 'index', 'action' => 'akcja2'), 'index_akcja1');
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Aktualny czas: 11.10.2025 - 17:32