Uncaught Nette\DI\ServiceCreationException
- ondrejd
- Člen | 22
Zdravím všechny, měl bych jednu (pravděpodobně hloupější) otázku:
- zdědil jsem aplikaci, která byla původně psaná v Zend Frameworku, ovšem pak byla napsána nová administrace a ta je v Nette 2.4, a já Nette vůbec neznám
- z vícero důvodů došlo k přesunu do složky admin2, kde mám bootstrap.php a původní odpovídající strukturu (presentery, modely atp.)
Aktuální stav konfiguračního souboru:
Krom té změny v přesunu složky nedošlo ke změnám v jiných zdrojácích a já pořád dostávám tuto chybu:
Fatal error: Uncaught Nette\DI\ServiceCreationException: Class admin2\model\UserManager used in service '26_admin2_model_UserManager' not found. in /var/www/inpage/vendor/nette/di/src/DI/ContainerBuilder.php on line 550
Vím, že tam mám nějakou hloupost, ale jak se v Nette nevyznám, tak nevím jak to nastavit. Neporadil by mi někdo? Díky.
- Ondřej Kubíček
- Člen | 494
v tom případě to nesmíš měnit v tom configu
to co tam je napsané je klasický php namespace, ne adresářová struktura
- Ondřej Kubíček
- Člen | 494
přečti si ještě jednou co jsem napsal a podívej se na můj přiklad :)
tím že měníš root složku nemusíš nic měnit v configu
předpokládám že v puvodním adresáři admin, máš namespace třeba toho
UserManager tento – admin\model\UserManager
a to necháš
stejný, tys to přepsal na admin2
Editoval Ondřej Kubíček (14. 12. 2018 10:04)
- ondrejd
- Člen | 22
Ondřej Kubíček napsal(a):
přečti si ještě jednou co jsem napsal a podívej se na můj přiklad :)
tím že měníš root složku nemusíš nic měnit v configu
předpokládám že v puvodním adresáři admin, máš namespace třeba toho UserManager tento –admin\model\UserManager
a to necháš stejné, tys to přepsal naadmin2
já jsem vzal původní aplikaci, hodil to do adresáře admin2
a namespace jsem neměnil (stále je App
), aktualizoval jsem si
composer aby v classmap byl adresář admin2 přiřazen předtím než je
načten bootstrap.php
. Pokud dám do konfigurace jen to
s namespacema, tak mi to hlásí, že je nenajde. Když jsem tam měl ty cesty,
tak to pak házelo tu chybu zmíněnou v názvu diskuse. Nemohl by jsi mi,
prosím, naznačit konfiguraci pro toto, co jsem tady napsal? Díky.
- Ondřej Kubíček
- Člen | 494
zkopíruj sem začátek té třídy UserManager, chci se podívat co tam
máš za namespace, protože v configu nebo v té třídě je blbě a pokud
ne, pokud ten namespace máš fakt admin2\model\UserManager
, tak ti
tu třídu nenačetl autoload, ale pochybuju, že máš namespace začínající
admin2, když jsi psal ted něco o App