Autentizace a nastavení třídy pro ni v config.ini
- joe
- Člen | 313
Ahoj,
s Nette začínám, ale zdá se, že mi ulehčí v budoucnu hodně moc práce (díky autorovi ;-)), ale mám jeden takový problém a nevím jestli něco dělám špatně já (spíš) nebo je chyba jinde.
Mám problém s autentizací. Pokud do configu vložím řádek
service.Nette-Security-IAuthenticator = Users
Znamená to, že třída, která se bude používat právě pro autentizaci je Users. Dělám vše – snažím se – stejně, jako je v příkladu akrabat.forms. Tj., třídu pojmenovanou Users v souboru Users.php mám v adresáří models.
Pokud tak mám všechno, pak se zkusím někde přihlásit a nemohu se zbavit
hlášení
Cannot instantiate service, class ‚Users‘ not found.
Proč ale třída nebyla nalezena? Mám to snad stejné jako v tom vzorovém příkladu, nechápu proč nebyla nalezena. Config mám taky stejný.
A teď najednou změna, pokud přestanu používat Config a do bootstrapu vložím následující kód
require_once APP_DIR . '/models/Users.php';
$user = Environment::getUser();
$user->setAuthenticationHandler(new Users());
tak vše začne fungovat jak má, může mi někdo vysvětlit kde bych mohl mít chybu?
Jinak jsem četl téma na řádku níž, ale smazání cache v adresáři temp/ nepomáhá. Nevím co s tím.
Děkuji moc za pomoc.
- jasir
- Člen | 746
okrajek napsal(a):
skocourek napsal(a):
A máš povolený, zapnutý a nastavený RobotLoader?
Taková otázka malá … Jak ho správně nastavit pro autorizaci? Děkuji moc :)
PS.: Je potřeba config.ini?
Jak nastavit RobotLoader pro autorizaci? No nijak, podle mě to spolu nijak nesouvisí :)
- Patrik Votoček
- Člen | 2221
Jak nastavit autorizaci RobotLoader-u? Něják nevím proč to dělat jestly myslíš jak nastavit Autorizační třídu pro App tak se to dělá tak že nastavíš service pro Autorizaci jak je to napsáno výše máš víc možností jak to udělat buďto to dáš do config.ini nebo použiješ v PHP Environment.