jak zjistit část adresy pomocí httpRequest
Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
- kasparek
- Člen | 43
Ahoj,
snažím se získat část textu z url ale nějak se mi to nedaří
v RouterFactory.php
$router[] = $frontRouter = new RouteList('Front');
$frontRouter[] = new Route('offer/<action>[/<type>][/<id>]', 'Offer:default');
a chtěl bych získat tu hodnotu type
v presenteru
private $httpRequest;
public function injectHttpRequest(Nette\Http\IRequest $httpRequest)
{
$this->httpRequest = $httpRequest;
}
a zkouším volat pomocí
$this->httpRequest->getUrl()->path
to vrátí "/offer/default/max" (18)
a nebo volám pomocí
$this->httpRequest->getQuery('type')
ale to mi vrací NULL
tak nevím
Díky za rady ;)
- Michal Vyšinský
- Člen | 608
Ahoj, do action nebo render metody presenteru si dej proměnnou (parametr) $type a hodnotu z routy tam budeš mít. Nemusíš nic takového vymýšlet.
public function actionDefault($type) {
}
- MartinitCZ
- Člen | 580
Nevím, proč jí ukládaš do $this->type
, ale nestačilo by
volat $this->getParameter('type')
tak, kde jí
potřebuješ.?