Routovanie a dokonanie zmeny „view“ → „action“
Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
- kravčo
- Člen | 721
Od verzie 0.9, keď boli odstránené (takmer) všetky deprecated metódy a iné fičúrky som prišiel na nemilú vlastnosť pri routovaní. Keď zmizne deprecated metóda, hodí to nejaký error, ale keď zmizne tiché premenovanie „view“ → „action“, tak to chyby nehádže a routovanie zrazu nefunguje…
S odstránením tichého premenovania súhlasím no v tomto prípade to vytvára dosť nešťastné a ťažko odhaliteľné správanie. Routa:
$router[] = new Route('<clanok>', array(
'presenter' => 'Default',
'view' => 'clanok',
'clanok => NULL,
));
smeruje na „Default:default?clanok=…“, pretože parameter view sa ignoruje a predvolená action je „default“.
Myslím, že tu bola chyba v tom, že Nette warningom neupozorňovalo na to, že parameter „view“ je deprecated, tak ako to býva pri väčšine spätne kompatibilných zmien. Niektorí si to, že už dlho nebude fungovať, ani nemuseli všimnúť.