Problem so sluzbou instalovanou cez composer
- vladimir.biro
- Člen | 163
Ahojte.
Prosim vas, mozete mi niekto pomoct s nasledujucim porblemom?
Mam sluzbu zaregistrovanu v config.neon:
services:
- VladimirBiro\ArticleManager\ArticleList
a nasledne pouzitu v presenteri:
namespace App\FrontendModule\Presenters;
use Tracy\Debugger;
use VladimirBiro\ArticleManager\ArticleList;
class HomepagePresenter extends BasePresenter
{
/** @var ArticleList */
private $am;
public function __construct(ArticleList $am)
{
$this->am = $am;
}
public function renderDefault()
{
// ... <-- Tu bude nejaky kod
}
}
Namespace sluzby je:
namespace VladimirBiro\ArticleManager;
No a Tracy mi hadze chybu:
Class VladimirBiro\ArticleManager\ArticleList used in service
‚30_VladimirBiro_ArticleManager_ArticleList‘ not found.
Je to balik, ktory som si vyrabal sam a je dokonca moj prvy, takze moze byt
problem aj v nom.
Tento balik sa da pozriet tu: https://github.com/…Article-list
Dakujem za kazdy postreh.
BYE
- GEpic
- Člen | 566
Takhle se ti obsah config.neon
v balíčku nezaregistruje –
musíš ho registrovat do projektového neonu nebo si napsat nějaké
udělátko, které bude neony z tvých balíčků brát v potaz.
PS:
article_list.php
← takto třídy nepojmenováváme, vždy jsou
1:1 s názvem třídy, tedy ArticleList.php
Editoval GEpic (9. 11. 2017 10:30)
- vladimir.biro
- Člen | 163
GEpic napsal(a):
Takhle se ti obsah
config.neon
v balíčku nezaregistruje – musíš ho registrovat do projektového neonu nebo si napsat nějaké udělátko, které bude neony z tvých balíčků brát v potaz.PS:
article_list.php
← takto třídy nepojmenováváme, vždy jsou 1:1 s názvem třídy, tedyArticleList.php
Ja ale ten config.neon v balicku ani nepotrebuju registrovat. Ten je tam ciste jen kvuli testovani pri vyvoji balicku samotneho. Pak pri pouziti balicku v projekte by uz nemel byt potrebny. Kdyby v tom baliku nemel testy, tak tam ani zadny config.neon nemam.
S tim nazvem tridy mas samozrejme pravdu a upracu si tam, ale to by nemelo spusobovat tuhle chybu ne? Nebo?
- vladimir.biro
- Člen | 163
David Matějka napsal(a):
Ahoj, chybi ti tam nastaveni autoloadingu. muzes treba pouzit classmap, ktery proskenuje ten adresar a najde tam vsechny tridy nebo treba psr-4, kde vsak musis dodrzovat urcite konvence, ze nazev tridy a namespace odpovida nazvu soubouru a adresari
Presne tam bol problem. Fakt dik. Velmi si mi s tymi balikmi pomohol.