Redraw snippetu v komponentě vyvolaný jinou komponentou, získání uživatele mimo presenter, autowiring tříd
- krcuk41
- Člen | 12
Ahoj,
snažím se vyřešit několik problémů a nejsem si úplně jistý jestli to dělám správně. Rád bych se zeptal na pár otázek.
1) Rewrite snippetu v komponentě vyvolané jinou komponentou
Mám dvě komponenty, jedna slouží pro výpis a druhá pro přidání nového záznamu. Při přidání nového záznamu volám po úspěšném zpracování následujíccí kód.
$this->getPresenter()['komponenta']->redrawControl('snippet');
Chci se zeptat jestli to jde vyřešit lépe. Tohle mi příjde jako prasárna.
2) Získání uživatele mimo presenter
V presenteru je uživatel dostpný přes $this->user. Co kdybych ho potřeboval třeba v komponentě nebo v úplně jiné třídě. Dá se něják jednoduše získat aniž bych ho předával konstruktorem nebo přes set.
3) Autowiring tříd
Používám autowiring na komponenty. Je vhodné ho používat třeba i na obyčejné třídy nebo helpery, které mají význam pro mě ale pro nette ne?
Kdybych to chtěl spojit s bodem 2 a získat v takto vytvořené třídě uživatele jde to jinak než ho předat přes továrničku?
Díky za rady.
- Pavel Kravčík
- Člen | 1196
- Možná by stálo za úvahu je dát do sebe nebo použít eventy.
- Stačí si předat přes DI
\Nette\Security\User
.
- krcuk41
- Člen | 12
CZechBoY napsal(a):
- resil bych asi pres eventy, je to univerzalnejsi a nemusis skoro nic resit
- predej pres DI – konstruktor/setter, jina moznost by byla magie
- vadi necemu autowiring nebo proc se ptas?
- Můžeš hodit ukázku? Bylo by to super.
- Chci se jen informovat jestli to neporušuje nějáké konvence.
- jiri.pudil
- Nette Blogger | 1032
- https://jiripudil.cz/…m-presenters
- Dependency Injection je de facto konvence :)
- krcuk41
- Člen | 12
krcuk41 napsal(a):
CZechBoY napsal(a):
- resil bych asi pres eventy, je to univerzalnejsi a nemusis skoro nic resit
- predej pres DI – konstruktor/setter, jina moznost by byla magie
- vadi necemu autowiring nebo proc se ptas?
- Můžeš hodit ukázku? Bylo by to super.
- Chci se jen informovat jestli to neporušuje nějáké konvence.
Špatně jsem to napsal :)
- Můžeš hodit ukázku? Bylo by to super.
- Chápu
- Chci se jen informovat jestli to neporušuje nějáké konvence.