Zobrazenie pre prihlásených, aj neprihlásených
Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
- ezimir
- Člen | 21
Rád by som prístup k niektorým presenterom obmedzil pre prihlásených používateľov, a k niektorým nie. Mám nasledovnú situáciu:
<?php
// BasePresenter.php
public function beforeRender() {
if (!$this->getUser()->isLoggedIn()) {
$this->redirect(':Login:');
}
}
?>
<?php
// bootstrap.php
$router = $application->getRouter();
$router[] = new Route('index.php', array(
'presenter' => 'Homepage',
'action' => 'default',
), Route::ONE_WAY);
$router[] = new Route('kniznica', array(
'presenter' => 'Library',
'action' => 'default',
));
$router[] = new Route('logout', array(
'presenter' => 'Login',
'action' => 'logout',
));
$router[] = new Route('<presenter>/<action>/<id>', array(
'presenter' => 'Homepage',
'action' => 'default',
'id' => NULL,
));
?>
a ešte LibraryPresenter
(ktorý nededí od
BasePresenter
-u).
Problém je, že /path/to/app/kniznica/
zobrazí
/path/to/app/login/
. Robím kontrolu prihlásenia správne? Alebo
mám problém v definíci route? Budem musieť spraviť „výhybku“ do
BasePresenter
-u a kontrolovať „prihlásenosť“ len pre
vybrané presentery?
Vďaka!
Editoval ezimir (8. 12. 2010 2:40)