Routa se matchne, ale presmeruje se na „nehezkou url“ verzi
- MelkorNemesis
- Člen | 36
Ahoj, mam routu:
<?php
$router[] = new Route('<presenter clanky>/<page>', array(
'action' => 'default',
'page' => 1
));
?>
- matchne se dobre, ale presmeruje me to na „/?page=1“ (clankovy presenter mam defaultni).
Toto naopak funguje, ale neni to cisty „nette“ zapis:
<?php
$router[] = new Route('/clanky/<page>', array(
'presenter' => 'Articles',
'action' => 'default',
));
?>
Jeste mam prekladove tabulky, ale ty by nemely delat problem:
<?php
Route::setStyleProperty('presenter', Route::FILTER_TABLE, array(
'uzivatele' => 'Users',
'pravidla' => 'Rules',
'vyhledavani' => 'Search',
'clanky' => 'Articles',
'clanek' => 'Articles'
));
Route::setStyleProperty('action', Route::FILTER_TABLE, array(
'uzivatele' => 'users',
'register' => 'registrace',
'neprihlasen' => 'notlogged'
));
?>
Nevi nekdo, jak zprovoznit prvni routu? Ostatni routy mam napsane skoro obdobne a funguji, diky
- Jeste jsem ted zjistil, ze kdyz smazu z prekladove tabulky radek s indexem „clanek“
a obdobnou routu:
<?php
$router[] = new Route('<presenter clanek>/<url>', array(
'url' => NULL,
'action' => 'detail'
));
?>
tak to jede, ale porad to problem neresi.
Editoval MelkorNemesis (1. 2. 2010 0:35)
- Vyki
- Člen | 388
<?php
$router[] = new Route('<presenter>/<page>', array(
'presenter' => 'clanky',
'action' => 'default',
'page' => 1
));
?>
To také neběží jak má?
//EDIT A jak tvoříš odkaz? {link clanky:default page=>2}
??
Zkus místo parametru page použít parametr id. Jenom to prostě
přejmenuj.
Editoval Vyki (1. 2. 2010 9:15)
- MelkorNemesis
- Člen | 36
<?php
$router[] = new Route('<presenter clanky>/<id [0-9]+>', array(
'action' => 'default',
'id' => 1
));
?>
prehodil sem to za id a nic to nedela, urcite tam bude nejake problem s tou prekladovou tabulkou, fakt kdyz tu routu na jedne clanek + jeji preklad z presenter tabulky smazu tak to jede. Ale tim ze zprovoznim jedno z nefunkcnim druhe si nepomuzu.
Editoval MelkorNemesis (1. 2. 2010 11:11)
- Ondřej Mirtes
- Člen | 1536
Odkazy určitě vytvářet jako {link Articles: ...}
, něco
jiného je nesmysl. A routu zkus ve tvaru:
$router[] = new Route('<presenter clanek|clanky>/<id [0-9]+>', array(
'action' => 'default',
));