Práca s Nette\Security\AuthenticationException
Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
- xand
- Člen | 15
ahojte, ako zobrazim, ze prihlasenie bolo neuspesne normalne cez
flashmessenge a nie len cervenu obrazovku nette?
v modely mam
if (!$row) {
throw new NS\AuthenticationException("User '$username' not found.", self::IDENTITY_NOT_FOUND);
}
a v presenteri,
try {
$this->getUser()->login($values->username, $values->password);
} catch (Nette\Security\AuthenticationException $e) {
$form->addError($e->getMessage());
return;
}
hocikde sa snazi pouzit flashmessenge, tak to nefunguje. ako by som mal postupovat? Dakujem :)
- David Matějka
- Moderator | 6445
\Nette\Security\AuthenticationException
je FQN, takze to bude
fungovat bez ohledu na namespace.
muzes si ale importovat tridu/namespace a pouzit zkraceny zapis. napr.:
use Nette; //na zacatek souboru za definici namespace
.....
catch(Nette\Security\AuthenticationException $e);
use Nette\Security\AuthenticationException;
...
catch(AuthenticationException $e)
use NetteSecurity as NS;
...
catch(NS\AuthenticationException $e);
ale tohle nesouvisi s nette, ale se samotnym php, vice v dokumentaci
- Xantes
- Člen | 28
Vím, že to nesouvisí s Nette a ptám se asi blbě, ale myslel jsem, že pokud mám
catch(Nette\Security\AuthenticationException $e);
tedy plnou cestu, tak na začátku use Nette; být nemusí. Bez toho mi to ale právě nefunguje, ale ve výchozím SignPresenteru v sandboxu to na začátku taky není.