Vícejazyčné routy – nevím co víc napsat nad 25 znaků
Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
- 2bfree
- Člen | 248
Zdravím, řeším takovou hloupost jakou jsou vícejazyčné routy. Mnohokrát se zde řešili různé překlady názvu presenteru, ale řešení pro tohle jsem nenašel. Jak takovouhle věc řešit správně?
<?php
$router[] = new Nette\Application\Route('prihlaseni.html', array(
'presenter' => 'Login',
'action' => 'login',
));
$router[] = new Nette\Application\Route('login.html', array(
'presenter' => 'Login',
'action' => 'login',
));
$router[] = new Nette\Application\Route('zmena-hesla.html', array(
'presenter' => 'Login',
'action' => 'changePassword',
));
$router[] = new Nette\Application\Route('change-password.html', array(
'presenter' => 'Login',
'action' => 'changePassword',
));
$router[] = new Nette\Application\Route('zapomenute-heslo.html', array(
'presenter' => 'Login',
'action' => 'forgottenPassword',
));
$router[] = new Nette\Application\Route('forgotten-password.html', array(
'presenter' => 'Login',
'action' => 'forgottenPassword',
));
?>
Editoval 2bfree (21. 1. 2011 10:25)
- newPOPE
- Člen | 648
<?php
use Nette\Application\Route;
$router[] = new Route('<action>.html', array(
'presenter' => 'Login',
'action' => array(
Route::FILTER_IN => callback('filterIn'), /*prevedie preklad na systemovy nazov*/
Route::FILTER_OUT => callback('filterOut'), /*preklad systemoveho nazvu na url*/
),
));
?>
pisane z hlavy ;-) mozno je to opacne.
- 2bfree
- Člen | 248
newPOPE napsal(a):
<?php use Nette\Application\Route; $router[] = new Route('<action>.html', array( 'presenter' => 'Login', 'action' => array( Route::FILTER_IN => callback('filterIn'), /*prevedie preklad na systemovy nazov*/ Route::FILTER_OUT => callback('filterOut'), /*preklad systemoveho nazvu na url*/ ), )); ?>
pisane z hlavy ;-) mozno je to opacne.
To zni pekne a myslim ze tudy vazne vede cesta, ale nejak si neumim tu funkci predstavit. Tedy ja porad nejak uvazuji variantu s Translatorem, coz asi bude ta chyba.