Problém tvoření odkazů v šabloně
Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
- Mooore
- Člen | 13
Ahoj, naskytl se mi problém s vytvořením odkazu v mém vlastním layoutu. Nette mi hlásí, že neumí najít presenter, který však existuje.
Invalid link: Cannot load presenter ‚Sign‘, class ‚App\Presenters\SignPresenter‘ was not found.
V Administration presenteru se vykresluje šablona adminLayout, ve které by se měl vytvořit odkaz menu na odhlášení uživatele v presenteru Sign presenter.
Odkaz se v adminLayout.latte generuje takto
<a n:href="Sign:out">Odhlásit se</a>
V default.latte šabloně AdministrationPresenteru se layout přidává takto:
{layout '../@adminLayout.latte'}
{block content}
... content ...
{/block}
A konečně ještě ukázka SignPresenteru:
<?php
namespace App\Presenters;
use Nette,
App\Forms\SignFormFactory,
Nette\Application\UI;
class SignPresenter extends BasePresenter
{
public function actionOut()
{
$this->getUser()->logout();
$this->redirect('Sign:');
}
}
?>
Ukázka umístění jednotlivých souborů:
- \App
- \presenters
- \AdministrationPresenter.php
- \SignPresenter.php
- \templates
- \@adminLayout.latte
- \Administration
- \default.latte
- \Sign
- \default.latte
- \presenters