Rozparsování URL – podmínka v definici Route
Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
- mrataja
- Člen | 57
Kolem routování už je tolik materiálů , že se divím, že to nedokážu postavit sám. Poradíte?
Adresa je např.
sandbox.loc/cs/news/2012/teoreticky-nekonecna-url/nejaky-clanek.html
přičemž lang = cs, do url spadne zbytek adresy, ale chtěl bych aby url =
news/2012/teoreticky-nekonecna-url a node = clanek.html
Node bude vždy končit .html, tak přemýšlím jak to nacpat do podmínky routy.
$frontRouter[] = new Route('[<lang [a-z]{2}>/]<novinky news>/<url .+>', array(
'presenter' => 'News',
'action' => 'default',
'url' => array(
Route::VALUE => NULL,
Route::FILTER_IN => NULL,
Route::FILTER_OUT => NULL,
),
));
Motám se kolem tohoto zápisu, ale nedaří se
$frontRouter[] = new Route('[<lang [a-z]{2}>/]<novinky news>/<url .+>/<node \.html>', array(
'presenter' => 'News',
'action' => 'default',
'url' => array(
Route::VALUE => NULL,
Route::FILTER_IN => NULL,
Route::FILTER_OUT => NULL,
),
'node' => null,
));