Začátečník má problém typu: Service ‚security.user‘

lukyn155
Člen | 3
+
0
-

Postupoval jsem přesně podle návodu na této stránce, jak udělat blog, ale mám problém ve chvíli, kdy jsem se snažil o přihlašování. S nette pracuji pouze chvíli a tak vůbec netuším co bych měl dělat.

Píše mi to chybovou hlášku typu:

Service ‚security.user‘ (type of Nette\Security\User): Multiple services of type Nette\Security\IAuthenticator found: 28_App_Model_UserManager, security.authenticator. If you want to overwrite service security.authenticator, give it proper name. (needed by $authenticator in Nette\Security\User::__construct())

Prosil bych o pomoc co dělám špatně. Tato chyba se vyskytne pouze ve chvíli kdy se snažím přidat:

security:
    users:
        admin: secret  # user 'admin', password 'secret'

do config.neon

David Matějka
Moderator | 6445
+
0
-

Ahoj, v sandboxu je trida UserManager, ktera take implementuje authorizator a je registrovana jako sluzba v configu

resenim je bud smazat jeji registraci v configu (a pripadne rovnou celou tridu) nebo – pokud chces vyuzivat nejake jine jeji metody, tak smazat u te tridy implements Nette\Security\IAuthenticator

lukyn155
Člen | 3
+
0
-

Děkuji za odpověď v config.neon jsem teda smazal tedy -App\Forms\UserManager

tentokrát mi to hodilo chybu typu:

**Service ‚27_App_Forms_SignUpFormFactory‘ (type of App\Forms\SignUpFormFactory): Service of type App\Model\UserManager needed by $userManager in App\Forms\SignUpFormFactory::__construct() not found. Did you register it in configuration file?
**
To znamená, že mám smazat celou třídu a případně kde se nachází?

Opravdu se zatím v nette moc neorientuji.

Roman Halaxa
Člen | 60
+
0
-

lukyn155 napsal(a):

Děkuji za odpověď v config.neon jsem teda smazal tedy -App\Forms\UserManager

tentokrát mi to hodilo chybu typu:

**Service ‚27_App_Forms_SignUpFormFactory‘ (type of App\Forms\SignUpFormFactory): Service of type App\Model\UserManager needed by $userManager in App\Forms\SignUpFormFactory::__construct() not found. Did you register it in configuration file?
**
To znamená, že mám smazat celou třídu a případně kde se nachází?

Opravdu se zatím v nette moc neorientuji.

Tohle ti říká že SignUpFormFactory (což je třída co vytváří přihlašovací formulář a je stejně jako UserManager v sandboxu v základě) má závislost na UserManager, a nemůže ho najít (protože jsi ho vlastně teďkon smazal).

lukyn155
Člen | 3
+
0
-

Děkuji za odpovědi teď už to snad pracuje tak jak má.