Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP][Kohana]Routing, Routing w kohana po raz kolejny :)
MateuszS
post
Post #1





Grupa: Zarejestrowani
Postów: 1 429
Pomógł: 195
Dołączył: 6.10.2008
Skąd: Kraków/Tomaszów Lubelski

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


Witam, mam znowu problemik z routingiem w Kohana. Mianowicie chcę zrobić tak że mamy adresy

Kod
strona.pl/admin/news/add
strona.pl/admin/news/edit/5
strona.pl/admin/gallery/add
... itd


mój routing wygląda następująco:

  1. Route::set('admin', '<controller>(/<action>(/<id>))',
  2. 'id' => '\d+',
  3. 'controller' => '(panel|news|gallery|films)',
  4. 'action' => '(add|edit|delete)'
  5. ))
  6. ->defaults(array(
  7. 'directory' => 'admin',
  8. 'controller' => 'panel',
  9. 'action' => 'index'
  10. ));


utworzyłem w folderze kontroler folder 'admin' a w nim kontroler panel.php. Jednak pojawia się błąd który mi nic nie mówi i nie nasuwa żadnego pomysłu
Kod
HTTP_Exception_404 [ 404 ]: The requested URL admin/index was not found on this server.


Dodam że znalazłem podobny routing u kolegi który działa (mu).

Pozdrawiam
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
skowron-line
post
Post #2





Grupa: Zarejestrowani
Postów: 4 340
Pomógł: 542
Dołączył: 15.01.2006
Skąd: Olsztyn/Warszawa

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


Użyj metody matches z klasy Route do testowania routingu.

Zobacz sobie coś takiego.
  1. Route::set('admin', 'admin(/<controller>(/<action>(/<id>)))')
  2. ->defaults(
  3. 'directory' => 'admin',
  4. 'controller' => 'panel',
  5. 'action' => 'index'
  6. )
  7. );


Edit

Wrzuciłem sobie u siebie
  1. Route::set('admin', 'admin(/<controller>(/<action>(/<id>)))')
  2. ->defaults(
  3. 'directory' => 'admin',
  4. 'controller' => 'panel',
  5. 'action' => 'index'
  6. )
  7. );
  8.  
  9. $route = Route::get('admin');
  10. echo Kohana_Debug::dump($route->matches('admin/panel'));

i dostaje
Kod
array(3) ( "controller" => string(5) "panel" "directory" => string(5) "admin" "action" => string(5) "index" )

więc działa (ko 3.2)

Edit 2
A tu działający twój route z 1 posta
  1. Route::set('admin', 'admin(/<controller>(/<action>(/<id>)))',
  2. 'id' => '\d+',
  3. 'controller' => '(panel|news|gallery|films)',
  4. 'action' => '(add|edit|delete)'
  5. ))
  6. ->defaults(array(
  7. 'directory' => 'admin',
  8. 'controller' => 'panel',
  9. 'action' => 'index'
  10. ));
  11.  
  12. $route = Route::get('admin');
  13. echo Kohana_Debug::dump($route->matches('admin/panel/edit/10'));


Ten post edytował skowron-line 18.02.2013, 21:40:03
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: 6.10.2025 - 13:21