Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [kohanaphp] Problem z routingiem kohana 3
milupo2nd
post
Post #1





Grupa: Zarejestrowani
Postów: 25
Pomógł: 0
Dołączył: 12.08.2004

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


Witam,
Czy ma ktos pomysl jak stworzyc routowanie dla nastepujacych przykladow:

domena.pl/ => controler:index, action:index
domena.pl/krakow/hotele =>controler:miasta, action:hotele, param:krakow
domena.pl/krakow/hotele/strona/3 =>controller:miasta,action:hotele, param:krakow

znalazlem cos w tym stylu ale nie bardzo chce dzialac:
  1. Route::set('default', '(<controller>(/<action>(/<id>)))', array('controller' => 'home|show|search|submit|vote'))
  2. ->defaults(array(
  3. 'controller' => 'welcome',
  4. 'action' => 'index',
  5. ));


jakis inny pomysl?
Z gory dzieki za pomoc
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 3)
ziqzaq
post
Post #2





Grupa: Zarejestrowani
Postów: 428
Pomógł: 128
Dołączył: 17.06.2007

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


  1. Route::set('default', '(<controller>(/<action>(/<id>)))', array('controller' => 'home|show|search|submit|vote'))
  2. ->defaults(array(
  3. 'controller' => 'welcome',
  4. 'action' => 'index',
  5. ));

Że tak się spytam. Co powyższy kod ma wspólnego z założeniami?
Cytat
domena.pl/ => controler:index, action:index
domena.pl/krakow/hotele =>controler:miasta, action:hotele, param:krakow
domena.pl/krakow/hotele/strona/3 =>controller:miasta,action:hotele, param:krakow

Przecież nawet kolejność elementów ścieżki się nie zgadza. Po co <controller> na początku jak tam ma być parametr miasto? Po co to <id>? Dlaczego ograniczasz kontrolery do 'home|show|search|submit|vote' gdy chcesz aby był wywoływany kontroler "miasta"?
Bez ładu i składu.
  1. Route::set('miasta', '<city>(/<action>(/strona/<page>))')
  2. ->defaults(array(
  3. 'controller' => 'miasta',
  4. 'action' => 'hotele',
  5. ));
  6. Route::set('default', '')
  7. ->defaults(array(
  8. 'controller' => 'index',
  9. 'action' => 'index',
  10. ));


Ten post edytował ziqzaq 3.06.2010, 22:36:35
Go to the top of the page
+Quote Post
milupo2nd
post
Post #3





Grupa: Zarejestrowani
Postów: 25
Pomógł: 0
Dołączył: 12.08.2004

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


W kohanie 3 troche pokrecony jest ten routing (przynajmniej jak dla mnie). W ferworze walki zaczalem szykac informacji o sposobach routingu i natknalem sie na kod, ktory przytoczylem (IMG:style_emoticons/default/smile.gif)

@ziqzaq wielkie dzieki za rozwiazanie. Sprawdze je jutro.

Jesli chodzi o kod to nie dzialal dlatego ze byl blad. Poprowiono go w wersji 3.0.5 http://dev.kohanaframework.org/issues/2878 (IMG:style_emoticons/default/rolleyes.gif)
Go to the top of the page
+Quote Post
ziqzaq
post
Post #4





Grupa: Zarejestrowani
Postów: 428
Pomógł: 128
Dołączył: 17.06.2007

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


Cytat(milupo2nd @ 3.06.2010, 23:35:57 ) *
Jesli chodzi o kod to nie dzialal dlatego ze byl blad. Poprowiono go w wersji 3.0.5 http://dev.kohanaframework.org/issues/2878

Prosto z http://dev.kohanaframework.org/issues/2878:
Cytat
In Class Contents there is the following example:

// This route will only match when <id> is a digit
Route::set('user/edit/<id>', array('id' => '\d+'));

// This route will match when <path> is anything
Route::set('<path>', array('path' => '.*'));

This appears to be incorrect, as set is missing the name parameter and should be like:

Route::set('path', '<path>', array('path' => '.*'));

Sorry, ale o jakim ty kodzie teraz piszesz? (IMG:style_emoticons/default/smile.gif) To, że w przykładzie brakowało nazwy ścieżki nijak ma się do twojego kodu.
Ja odnosiłem się do twojego przykładu, nie do przykładu z dokumentacji.
Routing w Kohanie 3 jest zdecydowanie prosty, tam naprawdę nie ma wielkiej filozofii:
- nazwa ścieżki,
- definicja ścieżki np. '<controller>(/<action>(/<jakisparametr>))',
- opcjonalnie definicja parametrow np. jeśli parametr 'jakisparametr' ma być tylko liczbą to array('id' => '\d+'),
- domyślne wartości parametrów (metoda defaults())
- + wiedza o 3 podstawowych parametrach: <controller>, <action>, <directory>.

Ten post edytował ziqzaq 3.06.2010, 23:02:21
Go to the top of the page
+Quote Post

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: 23.08.2025 - 01:43