Flash zprávy – jedno misto
- vlkodlak
- Člen | 175
zdravím pánové, dočetl jsem si, že „… Komponenta má své vlastní úložiště flash zpráv nezávislé na presenteru …“ viz. https://doc.nette.org/…n/components rozumím tomu správně že pak chyba reportovaná komponentou mi zobrazi někde na „boku“ místo obvyklého místa určeném např. v šabloně @layout.latte. a pokud ano, existuje možnost jak tyto chybové zprávy zobrazovat pouze na jednom místě? např. v šabloně @layout.latte
- Šaman
- Člen | 2666
Každá připojená komponenta(*) má přístup k
$this->presenter
, takže může ty zprávy posílat jemu (a tedy
na jedno místo). Teoreticky z pohledu obecného OOP návrhu to není 100%
čisté, ale presentery mají několik dalších výjimek, takže prakticky to
ničemu nevadí. Kromě flashmessage a možná přesměrování se tomu ale
vyhýbej – komponenta by na presenter neměla moc spoléhat. A v žádném
případě si z něho nesmí třeba tahat data, to už je velký prohřešek a
potencionální zdroj chyb.
(*) připojená komponenta znamená, že to není možné použít v konstruktoru (ten proběhne před připojením k presenteru), jinak by neměl nastat problém
Editoval Šaman (18. 10. 2017 18:11)