Tvorba komponent s využitím autowiringu

- Climber007
 - Člen | 105
 
Ahoj,
překopávám aplikaci a začleňuji do ní komponenty s automatickým
předáváním závoslostí. To používám přesně podle návodu už
dlouhou dobu. Bohužel na tomto projektu se mi do komponenty předává něco,
o co jsem se nikde nežádal (a Nette snad taky ne).
Mám komponentu přihlašovacího formuláře signInControl.
Všechno dělám standardně, ale Nette ji do konstruktoru nevkládá správný
presenter, ale presenter, který je konfigurován v config.neon
takto :
services:
    InstallPresenter:
        class: App\FrontModule\Presenters\InstallPresenter
        setup:
            - setPathes(%tempDir%, %wwwDir%)
Čím je to prosím nejspíše způsobeno?

- David Kudera
 - Člen | 455
 
Úplně si nemyslím, že by se komponentám měl předávat presenter. Pokud
je ale presenter potřeba, tak by se měla využít metoda
attached. Když už ale potřebuji někde nutně injectnout
presenter, tak se injectne celá application a z ní potom
vytáhnu presenter

- David Matějka
 - Moderator | 6445
 
mas v te komponente vlastni konstruktor? jinak v masteru by to melo byt opravene

- Climber007
 - Člen | 105
 
Konstruktor v ní nemám, nic ji nepředávám. je to jen přihlašovací
formulář – $user si bere z presenteru, víc není potřeba.
Zkusím master, zatím jedu na Nette 2.2.2.

- David Matějka
 - Moderator | 6445
 
staci pridat prazdny konstruktor
public function __construct()
{
	parent::__construct();
}
				
- David Kudera
 - Člen | 455
 
jde právě o to, že konstruktor parenta očekává presenter a nette ho zkousí injectnout