Moduly – Class ‚ErrorModule\Error4xxPresenter‘ was not found

netteman
Člen | 125
+
0
-

Zdravím,

poprvé zkouším nový nette/web-project s Core a UI.

Pokud si vytvořím moduly Front a Admin

$router = new RouteList;

$router->withModule('Admin')
    ->addRoute('admin/<presenter>/<action>[/<id>]', 'Home:default');

$router->withModule('Front')
    ->addRoute('<presenter>/<action>[/<id>]', 'Home:default');

return $router;
application:
	errorPresenter:
		4xx: Error:Error4xx
		5xx: Error:Error5xx
	mapping:
		Front: App\UI\Front\*Presenter
		Admin: App\UI\Admin\*Presenter

a zkusím načíst neexistující presenter, uvidím chybu Nette\Application\BadRequestException #404
Cannot load presenter ‚Front:Preklep‘, class ‚App\UI\Front\PreklepPresenter‘ was not found.

Pokud ale do configu přidám catchExcetions: true

application:
	errorPresenter:
		4xx: Error:Error4xx
		5xx: Error:Error5xx
	mapping:
		Front: App\UI\Front\*Presenter
		Admin: App\UI\Admin\*Presenter

	catchExceptions: true

a zkusím otevřít stejnou url, dostanu chybu
Cannot load presenter ‚Error:Error4xx‘, class ‚ErrorModule\Error4xxPresenter‘ was not found.

Pokud vezmu nette/web-project bez modulů a jakýchkoliv úprav, otevřu neexistují url, dostanu Nette\Application\BadRequestException #404
Cannot load presenter ‚Preklep‘, class ‚App\UI\Preklep\PreklepPresenter‘

Pokud tady přidám do configu catchExceptions: true uvidím normálně šablonu pro error 404

Můžete mi poradit, co dělám špatně?

Díky :)

Editoval netteman (12. 9. 17:29)

Infanticide0
Člen | 103
+
0
-

Nově je mapping obecně takhle mapping: App\UI\*\**Presenter, nemusíš moduly definovat zvlášť. Na novym nette/web-projektu to funguje, Error presentery jsou v Error modulu.

Jestli ti to i tak nepůjde, asi si bokem vytvoř novej web-projekt a sjednoť nastavení.

netteman
Člen | 125
+
0
-

Toto je nový web-project, ve kterém si zkouším, jak se tyto věci dělají ponovu.

netteman
Člen | 125
+
0
-

Nejspíš jsem na to přišel, je potřeba přidat ještě mapping pro modul Error

application:
	errorPresenter:
		4xx: Error:Error4xx
		5xx: Error:Error5xx
	mapping:
		Front: App\UI\Front\*Presenter
		Admin: App\UI\Admin\*Presenter
		Error: App\UI\Error\*\**Presenter

	catchExceptions: true