Nette autowiring HomePresenter vs BasePresenter

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
Fires
Člen | 97
+
0
-

Zdaravim,

kdyz si pres autowiring do HomePresenteru necham injectnout sluzbu je vsechno v poradku. Jakmile ale stejnou sluzbu prehodim do BasePresenteru narazim na chybu
`Recoverable Error
Argument 1 passed to App\Presenters\BasePresenter::__construct() must be an instance of xxxxxxxxxxxxx, none given, called in D:\Work\Develop\php\projectmind\app\presenters\HomepagePresenter.php on line 16 and defined `

Jak tohle vyresit ? Zkousel jsem snad uz stovku konfiguraci v configu atd. ale nemuzu na to prijit proc to v Home jde a v Base to vubec nejede . DIky :(

norbe
Backer | 405
+
0
-

Předpokládám že máš v Homepage presenteru přepsaný konstruktor a voláš parent::__construct() ?

Aurielle
Člen | 1281
+
0
-

Nemá být BasePresenter náhodou abstract? Nechápu, proč ho chceš autowirovat…

Fires
Člen | 97
+
0
-

Jo

Fires
Člen | 97
+
0
-

Pouze sem prepsal skeleton. Chci aby preklady meli vsechny constructory stejnej predavam tam translate.

Šaman
Člen | 2666
+
+4
-

Na závislosti v abstraktním presenteru je lepší použít inject metody, případně anotaci @inject.

Azathoth
Člen | 495
+
0
-

Já mám translator inejctnutý do basepresenteru a o konstruktor se vůbec nestarám. A spokojenost naprostá, krásně to funguje.

looky
Člen | 99
+
0
-

Můžeme vidět zdrojáky těch presenterů?

Quinix
Člen | 108
+
0
-

Pak musíš samozřejmě v parent::construct předat závislosti BasePresenteru.

Právě kvůli tomu se v presenterech většinou nepoužívá constructor injection ale @inject anotace.

Fires
Člen | 97
+
0
-

Dobre ale pak musim funkcionalitu z constructoru presunout do startup protoze injectnute hodnoty nebudou behem vytvareni jeste naplnene .. Je to spravne ?

Oli
Člen | 1215
+
0
-

Ano, s logikou by jsi měl pracovat nejdříve ve startup metodě. Constructor si nech jen na závislosti.

David Kudera
Člen | 455
+
0
-

Ano a přesně od toho startup je a i vždy byl ;-) konstruktor by měl být ideálně jen na předání závislostí

Fires
Člen | 97
+
0
-

Diky moc vsem !! Moc si toho cenim.