Debuggování vytváření linků

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
2bad2furious
Člen | 26
+
0
-

Ahoj,
zajímalo by mě jak debugovat vytváření linků. Dostávám „Invalid link: No route …“ a nemám ponětí proč.
Například mám link

<a href="{plink "show filter=>page"}">test</a>

a router rozdělen na:

$router[] = $adminRouteList = new RouteList("admin");
$router[] = $frontRouteList = new RouteList("front");

a cestu

$adminRouteList[] = new Route("admin/<locale $availableAdminLangs>/<presenter page>/<action show>/[<filter=all all|page|post|section>/[/<visibility=public public|draft|deleted|change>]]");

Používám Kdyby\Translation → locale je persistent.

Tato cesta normálně funguje

$adminRouteList[] = new Route("admin/<locale $availableAdminLangs>/<presenter=Default>[/<action=default default>]");

Editoval 2bad2furious (11. 10. 2017 9:36)

David Matějka
Moderator | 6445
+
+1
-

nema to byt v uvozovkach, jen

<a href="{plink show filter=>page}">test</a>
2bad2furious
Člen | 26
+
0
-

Děkuji. A je možné to něják debugovat?

David Matějka
Moderator | 6445
+
0
-

tohle by bylo zrovna celkem jednoduche, stacilo by dat breakpoint do link a tam bys videl, ze se to cele posila jako destination a ne args – pripadne by ses mohl podivat, jak vypada zkompilovana sablona. tohle totiz ani neni problem s routovanim samotnym, ale s latte.

jinak obecne je routovani celkem slozite debugovat a je potreba si proste odkrokovat v Route::constructUrl, proc se nepovedlo url pro ty parametry zkonstruovat… casto je dobry si dat breakpoint na return null