Existuje způsob, jak registrovat latte filtry v neon souborech?
- Tharos
- Člen | 1030
Koukám, že nyní lze z neonu registrovat pouze makra, používá se to pak takhle. Takže pro filtry nyní asi podpora není…
Můžeš si buďto tu extenzi přetížit a podporu pro tohle si tam doplnit (jak to jde od ruky záleží na tom, jak je ta extenze napsaná, ale tady bych věřil, že to půjde), anebo si to zařídit z jiné, vlastní extenze (takové fallback řešení…). Anebo můžeš poslat pull do Nette, pokud by ses na to cítil. :)
Editoval Tharos (5. 5. 2015 7:57)
- fary
- Člen | 155
Moc díky, ale nevím, jestli jsem něco neudělal špatně či co, ale když do konfigu přidám:
nette.latteFactory:
setup:
- addFilter('foo', MyFilter::format($a, $b, $c))
tak se mi vypíše tato hláška:
`Nette\InvalidStateException
Found sections ‚nette.latteFactory‘ in configuration, but corresponding extensions are missing.`
Nevím, jestli mám zápis toho callbacku vůbec dobře neb jestli není potřeba to vložit někam „hlouběji“.
Pak jsem to tedy zkusil vložit do services
:
services:
nette.latteFactory:
setup:
- addFilter('foo', MyFilter::format($a, $b, $c))
ale zase mi to píše:
`Nette\DI\ServiceCreationException
Service ‚nette.latteFactory‘: Unable to pass specified arguments to MyFilter::format()`
takže asi nepředávám správně ten callback či co. Mohl bych poprosit o malou ukázku?
- newPOPE
- Člen | 648
Ja to pouzivam takto ale nepouzivam staticke volanie ale dynamicke sluzby. Mam pocit, ze tam tie parametre uvadzat nemusis (ale ruku do ohna za to nedam).
services:
dateResolver: App\Template\DateResolver
nette.latteFactory:
setup:
- addFilter('date', [@dateResolver, convertToString])
Tebe by mohlo pomoct nieco taketo:
- addFilter('date', Foo::bar) #cize bez parametrov
Editoval newPOPE (5. 5. 2015 10:53)