Router vezme špatnou routu
Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
- Martk
- Člen | 661
Mám link
<a n:href="News:category entity => $item" class="btn btn-sm secondary">Kategorie</a>
a router
$front[] = new Route('https://%domain%/novinky/<category>/<id [0-9]+>[-<name [0-9a-zA-Z\-]+>]', [
'presenter' => 'News',
'action' => 'detail',
null => [
Route::FILTER_OUT => function (array $params) {
if (isset($params['entity'])) {
/** @var News $news */
$news = $params['entity'];
$params['name'] = $news->getSubject();
$params['id'] = (string) $news->getId();
$params['category'] = $news->getCategory()->getName();
unset($params['entity']);
}
return $params;
},
],
]);
$front[] = new Route('https://%domain%/novinky/<id [0-9]+>-<name [0-9a-zA-Z\-]+>', [
'presenter' => 'News',
'action' => 'category',
null => [
Route::FILTER_OUT => function (array $params) {
if (isset($params['entity'])) {
/** @var NewsCategory $category */
$category = $params['entity'];
$params['name'] = $category->getName();
$params['id'] = (string) $category->getId();
unset($params['entity']);
}
return $params;
}
],
]);
Nechápu proč, ale vždy mi to hodí parametry do routy pro News:detail, přitom v parametrech je action ⇒ category, presenter ⇒ News. Nevíte co dělám špatně?
Používám nette 3.0