Dva authenticatory se hadaji
- Syntey
- Člen | 15
Zdravim, predelam web z verze nette 2.0 do 2.4 a naskytl se mi problem, ze se mi dva authenticatory hadaji (nedostanu se ani na hlavni stranku). Jeden slouzi pro prihlaseni uzivatele a druhy pro admina.
Pise mi to chybu:
Service 'security.user': Multiple services of type Nette\Security\IAuthenticator found: adminAuthenticator, authenticator
A takhle vypada config:
services:
…
authenticator: App\Model\Authenticator
adminAuthenticator: AdminModule\AdminAuthenticator
…
Vubec netusim kde by mohl byt problem, oddelene je totiz mam a na starsi verzi to funguje.
Za nejake rady predem diky! :)
- artemevsin
- Člen | 61
oba dva implementují IAuthenticator, takže nette neví kterou implementaci má injectnout, když někde vyžádáš IAuthenticator. Stačí ale u jednoho z nich nastavit v configu autowired: false a už se ti bude injectovat jen ta druhá.
services
authenticator: App\Model\Authenticator
adminAuthenticator:
class: App\Model\AdminAuthenticator
autowired: false
Když někde budeš vyžadovat AdminAuthenticator, tak ho tam musíš předat ručně
- David Kudera
- Člen | 455
nebo podle mě ještě lepší možnost: vojtech-dobes/nette-multi-authenticator ;-)