Zmizeni id z url adresy vda totozne pripady, jeden funguje, druhy ne
- besir
- Člen | 170
Ahoj mam dve routy na ruzne prezentery,
ty ziskavaji stejna data, jen vykreslene stranky vypadaji rozdilne a jedna je
rozsirena a naopak ochuzena o nejake komponenty.
Routy:
// pro ukazku
$langs = 'cs|en|ru';
// Setup router
$container->router[] = new Route('index.php', 'Front:Homepage:', Route::ONE_WAY);
$container->router[] = new Route('/admin[/<presenter>][/<action>][/<id>]', array(
'module' => 'admin',
'presenter' => 'sign',
'action' => 'in',
));
$container->router[] = new Route('[<lang ('.$langs.')>/]nemovitost/<id>', array(
'lang' => $defaultLang,
'module' => 'front',
'presenter' => 'property',
'action' => 'detail',
'id' => array(
Route::FILTER_IN => callback('\BesirCMS\models\Properties::getPropertyId'),
Route::FILTER_OUT => callback('\BesirCMS\models\Properties::getPropertySlug')
)
));
$container->router[] = new Route('[<lang ('.$langs.')>/]dotaz-na-nemovitost/<id>', array(
'lang' => $defaultLang,
'module' => 'front',
'presenter' => 'request',
'action' => 'send',
'id' => array(
Route::FILTER_IN => callback('\BesirCMS\models\Properties::getPropertyId'),
Route::FILTER_OUT => callback('\BesirCMS\models\Properties::getPropertySlug')
)
));
$container->router[] = new Route('[<lang ('.$langs.')>/]<presenter>[/<action>][/<id>][/<page>]', array(
'lang' => $defaultLang,
'module' => 'front',
'presenter' => 'homepage',
'action' => 'default'
));
Pri zkoumani a hledani sem prisel na to ze kdyz chci zmenit jazyk tak se mi v odkazu proste vytrati $id, resp. $slug nemovitosti.
Odkazy na prepinani jazyku:
<div class="lang margin-vertical">
<a n:href="this, lang => cs">česky</a> /
<a n:href="this, lang => en">english</a> /
<a n:href="this, lang => ru">pycc</a>
</div>
Diky za help, cumim do toho uz docela dlouho a ne a ne na to prijit :-(
Editoval besir (22. 9. 2012 14:47)
- besir
- Člen | 170
Ahoj, nemam je persistentni. Ani pro jednu routu a v te jedne to funguje, tedy v teto:
$container->router[] = new Route('[<lang ('.$langs.')>/]nemovitost/<id>', array
a
tady to nefunguje:
$container->router[] = new Route('[<lang ('.$langs.')>/]dotaz-na-nemovitost/<id>', array(
Pokud to chapu dobre tak to ma vzit pouze current url a pridat ji parametr lang. Mam to zprovozněné podle Tomáše Votruby kuchařky https://componette.org/search/?… a jediné co nastavuje jako persistent tak je lang.
- pidiclovek
- Člen | 91
Doporučuju ořezat funkcionalitu a minimální množství kódu pro ověření funkcionality přesunout do sandboxu. Protože v to co jsi uvedl chybu nevidim, bude asi někde jinde. Pokud ani pak chybu nenajdeš, uploaduj někam ten sandbox.