Containeru nebyla vrácena routa ve formátu Nette\Application\IRouter

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

Zdravím,

už nějakou chvíli mi vrtá hlavou proč mi RouterFactory(.php) při returnu nevrací routy ve formátu Nette\Application\IRouter… nevidím proč, už je pozdě takže mi to asi nemyslí… ale já to chtěl dodělat.

RouterFactory.php:

namespace App;
use Nette;
use Nette\Application\Routers\RouteList;
use Nette\Application\Routers\Route;
class RouterFactory
{
	/**
	 * @return Nette\Application\IRouter
	 */
	public static function createRouter()
	{
            $router[] = new Route('index.php', 'Front:Intro:default', Route::ONE_WAY);

            $router[] = $adminRouter = new RouteList('Admin');
            $adminRouter[] = new Route('admin/<presenter>/<action>', 'Intro:default');

            $router[] = $frontRouter = new RouteList('Front');
            $frontRouter[] = new Route('<presenter>/<action>[/<id>]', 'Intro:default');
            $frontRouter[] = new Route('<action>[/<id>]', 'Intro:default', Route::ONE_WAY);
            //$router[] = new Route('rss.xml', 'Feed:rss');
            //$router[] = new Route('post/<id>', 'Post:view', Route::ONE_WAY);
            return $router;
	}
}

pro jistotu config.neon:

parameters:


php:
	date.timezone: Europe/Prague


application:
	errorPresenter: Error
	mapping:
		*: App\Module\*\Presenters\*Presenter


session:
	expiration: +14 days


security:
	users:
		admin: devtest  # user 'admin', password 'secret'


services:
	#- App\Forms\AuthFormFactory
	router: App\RouterFactory::createRouter

v bootstrap.php se rout vůbec nedotku, chybu mi následně v tracy vyhazuje \cache\Nette.Configurator\Container_XXXXXXXXXXXX.php, zkoušel jsem promazat i cache.

~Aca

Editoval theacastus (19. 6. 2016 0:54)

Majkl578
Moderator | 1364
+
+1
-

Nikde neinicializuješ proměnnou $router, tudíž se z ní při prvním zápisu implicitně stane pole.

theacastus
Člen | 81
+
+1
-

A jo… díky :) už to funguje a pomalu ale jistě pokračuji :)