Dynamické nalinkování konfigurace

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
vasam
Člen | 26
+
0
-

Zdravím,
chci se zeptat, zda existuje nějaký elegantní způsob jak prohledat určitou adresářovou strukturu a dynamicky z ní nalinkovat konfigurační NEON soubory – něco na způsob AutoLoaderu.
Stavím na Nette administrační část / takový jednodušší CMS, který se skládá z modulů, přičemž každý modul by měl mít vlastní config soubor (vlastní služby, atd.).
Je známo nějaké Best Practice řešení nebo si ho musím navrhnout sám (asi někde do bootstrapu)?

Předem díky za tipy.

Editoval vasam (26. 6. 2014 20:08)

Jiří Nápravník
Člen | 710
+
+3
-

Moduly doporučuji spíše řešit tím způsobem, že co modul to bude Extension a tam si už pak samozřejmě můžeš načítat jak jednotlivé services, tak i konfigurace apod.

Zdeno1981
Člen | 115
+
0
-

Ahoj,
zrovna nedávno jsem si začal taky psát takové své malé amatérské cms a pro automatické vyhledávání konfiguračních souborů jsem zvolil Finder https://doc.nette.org/cs/utils/finder, který mi prohledá v aplikaci konfigurační soubory a uloží do cache, díky tomu vezmu modul, nahraji na fpt a v administraci provedu aktivaci nebo jednoduchou instalaci.

vasam
Člen | 26
+
0
-

Jj, to mám v úmyslu.
Spíš bych to chtěl ale udělat tak, aby se nemusel editovat hlavní config. Ta registrace exstension by byla až v config u daného modulu.

vasam
Člen | 26
+
0
-

Jak konkrétně jsi řešil to cacheování? Nějak přes Nette\Caching?

MartinitCZ
Člen | 580
+
0
-

Koukni na venne CMS|Framework|...... http://www.venne.cz/.
Pokud vím, tak přesno toto řešil a vyřešil.
Zdrojáky jsou na gitu, tak třeba se přiučíš a najdeš přesně to, co potřebuješ. ;)

akadlec
Člen | 1326
+
0
-

A nebo na Flame/Modules kde se řeší moduly i když né vše má asi šťastně vyřešeno.

Zdeno1981
Člen | 115
+
0
-

můžeš se inspirovat, ovšem na vlastní riziko :) jsem amatérský programátor, takže jestli mi to funguje, neřeším to dál.

Mám vlastí konfigurační soubor, kde mám na to tuhle metodu: https://github.com/…igurator.php#L71

v zaváděcím souboru, to mám takto nastavené:
https://github.com/…p/booter.php#L18

pro mě to má výhody v tom, že vezmu modul vložím do aplikace a po odstranění cache nalezených konfiguračních souborů se aktivuje vyhledávání, cache se aktualizuje a předá konfigy do systémovému kontejneru a nette s tím bez problému pracuje.

Díky tomu si vlastně spustím třeba takovou malou konfiguraci systému, kde si zadám název webu, registruji administrátora a instalátor následně odstraním (opět odstraním i cache konfigů) a to vše pohodlně v prohlížeči.