Routovani pro vlastni strukturu

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

Ahoj vsem,
mam nasledujici strukturu slozek

Fotka se strukturou

Hlavni cil je mit Presenter pro slozku Header,Footer,Content, atd. Kdyz vyzkousime napr. odkaz: "":http://localhost/…plate/header tak dostanu error:

Nette\Application\BadRequestException #404

Cannot load presenter 'Template:Header', class 'App\TemplateModule\Presenters\HeaderPresenter' was not found.

pritom HeaderPresenter tam je.

Muzete mi prosim nekdo porait co s tim? Predpokladam ze, musim nastavit routovani ale nevim jak. Zkusil jsem:

	public static function createRouter()
	{
		$router = new RouteList;
		$router[] = new Route('<module>/<presenter>/<action>/[<id>]', 'Homepage:default');
		return $router;
	}

Bez uspechu.

Edit: Zmenil jsme fotku

Editoval Piticu (6. 8. 2017 15:26)

David Matějka
Moderator | 6445
+
+1
-

nezalezi na slozce, ale na namespace – je HeaderPresenter ve spravnem namespace?

Piticu
Člen | 93
+
0
-

@DavidMatějka Tam mam

namespace App\Presenters;

coz v tomhle pripade bude spatny. Mame ale i BasePresenter, ktery je ulozeny ve slozce presenters, tak jak v tomhle pripade napsat namspace abych mel pristup k oboum Presenteru? (BasePresenters ve slozce presenters a HeaderPresenters ve slozce **TemplateModule/presenters **

Edit:
Tak jsem ted nastavil namespace na

namespace App\TemplateModule\Presenters;

ale zase dostanu

Case mismatch on class name 'App\TemplateModule\presenters\HeaderPresenter', correct name is 'App\TemplateModule\Presenters\HeaderPresenter'

Jsem tak trochu zmateny.

Editoval Piticu (6. 8. 2017 17:46)

David Matějka
Moderator | 6445
+
0
-

jak mas nastavene v configu application -> mapping?

Piticu
Člen | 93
+
0
-

``> David Matějka napsal(a):
>

jak mas nastavene v configu application -> mapping?

		*: App\*Module\Presenters\*Presenter

Zkusil jsem i

*: *Module\*Presenter

Musim tam nejak rozepsat kazdy Modul?

Edit:

Jeste jsem zkusil:

Template: App\TemplateModule\Presenters\*Presenter

a presenter HeaderPresenter

namespace App\TemplateModule\Presenters;


use Nette;

class HeaderPresenter extends \App\Presenters\BasePresenter
{

ale porad dostavam nejaky error

Editoval Piticu (6. 8. 2017 18:30)