routa pro modul admin v routeFactory
- admin@easyweb4u.cz
- Backer | 143
Stáhnul jsem nette 2.4, kde je ve složce router soubor RouterFactory.php. Vytvořil jsem si v app modul admin a vytvořil routu pro logovací stránku
<?php
class RouterFactory
{
use Nette\StaticClass;
/**
* @return Nette\Application\IRouter
*/
public static function createRouter()
{
$router[] = $adminRouter = new RouteList('Admin');
$adminRouter[] = new Route('admin/<presenter>/<action>', 'Sign:in');
return $router;
}
}
?>
hází to následující chybu
Return value of Container_0313f473b9::createServiceRouting__router() must implement interface Nette\Application\IRouter, array returned
Pokud si router vytvořím v souboru bootstrap.php, tak mi to funguje. Kde by mohl být problém?
Editoval admin@easyweb4u.cz (26. 6. 2018 9:57)
- Ondřej Kubíček
- Člen | 494
protože $router
máš ted jako pole, musíš vracet
RouteList
takže na začátek
$router = new RouteList();
Editoval Ondřej Kubíček (26. 6. 2018 10:12)
- Felix
- Nette Core | 1196
admin@easyweb4u.cz napsal(a):
Ale jak pak odliším routy pro moduly Admin a Front?
Tak jak to delas. Mel jsi to skoro dobre. :-)
$router = new RouteList();
$router[] = $admin = new RouteList('Admin');
$admin[] = new Route('admin/<presenter>/<action>', 'Sign:in');
$router[] = $front = new RouteList('Front');
$front[] = new Route('<presenter>/<action>', 'Home');
return $router;
- admin@easyweb4u.cz
- Backer | 143
Díky, funguje to. Vlastně jsem tam nepozorností vrazil [] a udělal z objektu pole…