pepalinha [Oct 4th at 10:02 PM]
Ahoj, jak a kde v app prosim provadite registraci vlastnich filtru? Vlastne poradne nevim, kam ji v Nette zapsat, aby filtry byly dostupne po cele app (v presenterech, v komponentách). Diky
janpecha [Oct 5th at 8:22:42 AM]
ahoj, filtry pro Lean Mapper registruji standardně v config.neon:
config.neon
services: leanmapperConnection: factory: LeanMapper\Connection(%leanmapper%) setup: - registerFilter('name', callback)
ale není to moc často, vlastně to tak dělám jen u jedné starší aplikace - jinak si obvykle vystačím s Query objektem (https://github.com/mibk/LeanMapperQuery), případně jen s anonymními filtry https://leanmapper.com/cs/docs/filtry/#toc-objekt-filtering
[ pepalinha]
pepalinha [Oct 5th at 10:19:46 AM]
V tom configu, to je to co hledam a vim, ze tak jde, ale prave jak tam dostanu ten callback? Ona to je spis uz otazka na nette diky
janpecha [Oct 5th at 10:26:23 AM]
Záleží jestli máš ten filtr jako statickou metodu, nebo jako službu
pro statickou metodu by mělo myslím fungovat něco jako - registerFilter('name', [App\Filters, 'filterMethod']) možná i - registerFilter('name', App\Filters::filterMethod)
- registerFilter('name', [App\Filters, 'filterMethod'])
- registerFilter('name', App\Filters::filterMethod)
pro metodu služby pak - registerFilter('name', [@App\Filters, 'filterMethod']) (důležitý je ten @ který označuje odkaz na službu v DI), opět by možná mohla fungovat i varianta - registerFilter('name', @App\Filters::filterMethod)
- registerFilter('name', [@App\Filters, 'filterMethod'])
@
- registerFilter('name', @App\Filters::filterMethod)
pepalinha [Oct 5th at 5:26:44 PM]
Děkuju nakonec jsem to vyřešil trochu víc sofistikovaně (služba, která mi do connection registruje jednotlivé filtry, které jsou vlastně taky jako služba ), mně se moc nelíbí ty názvy metod třeba ve stringu