Nahrada nette knihoven za vlastni upravene knihovny
- Elianos
- Člen | 3
Zdravim Vase vsechny,
nevim jetli jste se s takovim problemme setkali, ale obcas se mi stane ze mi
nektere knihovny nette uplne nevyhovuji a chtel bych je nahradit vlastnimi. To
by nebyl takovy problem, ale nechci zasahovat primo do nette frameworku, chtel
bych je nejakym vhodnym zpusobem nahrat ze svych uprav. Takova uprava se mi
podarila v config.ini u knihovny PresenterLoader:
service.Nette-Application-IPresenterLoader.factory = „MyLoader::createPresenterLoader“
A vsak nedari se mi nahradit jinou knihovnu a to Nette/Templates/Template. Pokouselj sem se o to stejnym zpusobem v config.ini, ale nezdarilo se.
Je mozne vubec knihovny takto nahrazovat? Pokud ano mohl by mi nikdo vysvetlit jak to rpesne funguje, koukal jsem se po tom uz delsi dobu a stale se mi nedari projem vyresit.
- mue
- Člen | 8
Elianos napsal(a):
No me nejak nejde o tento konkretni problem jako becne jak provest zmenu toho razeni, ze si urpavim nejaky modul z nette, to ze si tridu potedim to jsem samozrejme udelal, upravil jsem ji, ale jak ji mam zaregistrovat?
Registrovat není potřeba. Applicatiton volá příslušný presenter dle routeru. Stačí si tento presenter odvodit od BasePresenter, který bude odvozený od Presenteru a přepíšu v tom BasePresenter metodu GetTemplate().
Je fakt že tohle je celkem specifický, většina věcí jde vyřešit přes Services. A zbytek dědičností :)
- Ondřej Mirtes
- Člen | 1536
Napadlo mě kdysi, že bych všechny tyhle možnosti záměn zmapoval do dokumentace, ale prošlo mi to tak průhledné, že jsem to zavrhl. Ale asi to udělám :)
BTW: Deklarace toho, že se používá třída Template, je spíš
v createTemplate(), než v getTemplate().
BTW2: Pokud ti vadí jen LatteFilter, tak ti zbytek Template nijak nebrání
použít nějaký jiný filtr.
- jasir
- Člen | 746
Elianos napsal(a):
Zdravim Vase vsechny,
nevim jetli jste se s takovim problemme setkali, ale obcas se mi stane ze mi nektere knihovny nette uplne nevyhovuji a chtel bych je nahradit vlastnimi. To by nebyl takovy problem, ale nechci zasahovat primo do nette frameworku, chtel bych je nejakym vhodnym zpusobem nahrat ze svych uprav.
Já jsem také něco takového potřeboval, ale bez zásahu do Nette jsem na to nepřišel. Myslím, že by se zde Nette mohlo zbavit jedné zbytečné závislosti. Já si to udělal takhle: https://github.com/…e7def38b99f5
Stačí pak uvést v config.ini:
[development < common]
service.Nette-Templates-ITemplate = DebugTemplate
Editoval jasir (23. 4. 2010 19:44)
- Honza Kuchař
- Člen | 1661
jasir napsal(a):
Elianos napsal(a):
nevim jetli jste se s takovim problemme setkali, ale obcas se mi stane ze mi nektere knihovny nette uplne nevyhovuji a chtel bych je nahradit vlastnimi. To by nebyl takovy problem, ale nechci zasahovat primo do nette frameworku, chtel bych je nejakym vhodnym zpusobem nahrat ze svych uprav. Takova uprava se mi podarila v config.ini u knihovny PresenterLoader:
service.Nette-Application-IPresenterLoader.factory = „MyLoader::createPresenterLoader“
A vsak nedari se mi nahradit jinou knihovnu a to Nette/Templates/Template. Pokouselj sem se o to stejnym zpusobem v config.ini, ale nezdarilo se.
Je mozne vubec knihovny takto nahrazovat? Pokud ano mohl by mi nikdo vysvetlit jak to rpesne funguje, koukal jsem se po tom uz delsi dobu a stale se mi nedari projem vyresit.
Já jsem také něco takového potřeboval. Myslím, že bys se Nette mohlo zbavit jedné zbytečné události. Kdyžtak já to udělal takhle. https://github.com/…e7def38b99f5
Stačí pak uvést v config.ini:
[development < common] service.Nette-Templates-ITemplate = DebugTemplate
Toto by se mělo určitě objevit v Nette.