Jednosměrná routa, která zahodí parametry
Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
- maarlin
- Člen | 207
Mám routu, která by měla přesměrovat návštěvníka z „už neexistující“ URL na homepage:
Původní URL byly cca ve tvaru /deprecated-section/23423-my-article-12, /deprecated-section/anything atd.
$frontRouter[] = new NRoute( 'deprecated-section/<whatever>', array (
'presenter' => 'Homepage',
'action' => 'default'
), NRoute::ONE_WAY );
Routa ale zanechává předané parametry a tedy přesměrovává na /?whatever=%hodnota parametru%.
Jak ten zbytek za /deprecated-section/ po přesměrování úplně zahazovat?
- Filip Procházka
- Moderator | 4668
Vlastní router, nebo tam dát mezikrok s presenterem (nebude to one-way)
- Mikulas Dite
- Člen | 756
To je docela brutální. Jediné použití mě napadá u API, jinak by bylo milé stará url zachovat.
- Jakub Bouček
- Člen | 54
Právě jsem to řešil.
Určité specifické části lze vyhodit pomocí Foo parametrů:
<?php
$frontRouter[] = new NRoute( 'deprecated-section/<? .*>', array (
'presenter' => 'Homepage',
'action' => 'default'
), NRoute::ONE_WAY );
?>