Po přidání namespace nefunguje
- mujfibi
- Člen | 3
Ahoj, (začínám s nette a)
mám takový problém, že jsem si udělal mini aplikaci, která jen vypisuje data z jedné tabulky, mám tedy dva modely (ArticlesRepository a Repository) a 3 presentery (ArticlesPresenter, BasePresenter, HomepagePresenter). Chtěl jsem z toho udělat modul, takže jsem do všech presenterů přidal namespace FrontModule. Do modelů jsem ho nepřidával.
Úprava config na:: articlesRepository: \FrontModule\ArticlesRepository
Ještě navíc jsem presentery a templaty hodil do adresáře FrontModule.
BasePresenter.php
namespace FrontModule;
abstract class BasePresenter extends \Nette\Application\UI\Presenter
{}
ArticlesPresenter.php
namespace FrontModule;
class ArticlesPresenter extends \BasePresenter
{...}
Repository.php
//dával jsem i namespace FrontModule; ale podobná chyba (pouze bez FrontModule)
abstract class Repository extends Nette\Object
{..}
ArticlesRepository.php
//dával jsem i namespace FrontModule; ale podobná chyba (pouze bez FrontModule)
class ArticlesRepository extends Repository
{..}
Router upraven:
// Front
$router[] = new Route('<presenter>/<action>[/<id>]', array(
'module' => 'Front',
'presenter' => 'Homepage',
'action' => 'default',
'id' => NULL,
));
Tracy mi vyhazuje chybu, že nemůže instanciovat/najít třídu, což je mi divné:
Class \FrontModule\ArticlesRepository used in service 'articlesRepository' has not been found or is not instantiable
Než jsem přidal jmenné prostory, tak všechno fungovalo.
Nějaký nápad jak problém vyřešit?
Díky všem ;-)
PS:
PHP 5.3.3–7+squeeze17
Apache/2.2.16 (Debian)
Nette Framework 2.0.13
Editoval mujfibi (12. 11. 2013 11:27)
- mujfibi
- Člen | 3
vvoody napsal(a):
Exception hlási problém s ArticlesRepository a ty sem pastuješ všetky ostatné triedy ;)
Omlouvám, se celou dobu jsem zaujatej na presenter :D
Upozornil bych, že je to v adresářové struktuře app/model/ a ostatní je
v app/FrontModule/presenters/ a app/FrontModule/templates/
Upraveno…
Editoval mujfibi (12. 11. 2013 11:26)
- mujfibi
- Člen | 3
vvoody napsal(a):
To čo ma byt ten komentár :D tak snáď namespace služby musí byť totožný s definíciou v configu, čiže samozrejme že to tam patrí. Ak ti vyhodí chybu tak bude zrejme iná čiže problém bude aj inde.
Tak už jsem to opravil a předělal, nějakým způsobem jsem poopravoval
vše, co mi přišlo špatně.
Přidal jsem namespace i do modelů a hlavně poupravoval různě zpětná
lomítka :D
Děkuji za radu a jdu zkoumat dál.