Pole proměnných v routě
- krissott
- Člen | 48
Dovolte mi abych Vám nejdříve nastínil mojí myšlenku.
Třeba bude špatná, ale pro to právě forum je ne :), aby se ostatní
vyvarovali chyb.
Představte si CMS, kde dopředu nevíte kolik má cesta levelů tzn. jak je
hluboká (rekurze).
Jednotlivé stránky jsou čtené s DB či jiného úložiště.
př. url/o-fakulte/kalendar-akci/…
Tak mě napadlo, že by bylo z mnoha důvodů výhodné, mít cestu uloženou jako pole:
$path=array(
[0] =>'o-fakulte'
[1] =>'kalendar-akci'
);
Tohle řešení ovšem způsobí to, že v proměnné GET dostaneme něco
takového:
url?[0]=o-fakulte&[1]=kalendar-akci
A tak se ptám jak udělat router aby pole $path proměnilo na takovouto
krásnou url:
url/o-fakulte/kalendar-akci/
Jedno řešení mi poradil JOD. Dík ;)
Nejdříve převěst pole na sting : value/value/…
a poté zpět rozparsovat na pole.
Řešení funguje a zatím to taky tak mám, ale chtěl jsem se zeptat, jestli neexstuje elegantnější řešení.
Dík
Editoval krissott (17. 1. 2009 21:43)
- romansklenar
- Člen | 655
Ahoj, pokud myslíš víceúrovňové routy, zkus si nastudovat tohle vlákno, tam se to řešilo. Je to docela častý požadavek redakčních systémů mít URL v takových tvarech a bez napsání vlastní routy je to asi slepá cesta (teda jde to, ale je to prasácké no :)). Já se tady na tohle taky v nejbližší době chystám.
BTW: všimám jsi, že hodně lidí řeší podobné věci, často spojené s psaním nějakého vlastního CMS – možná by nebylo na škodu něco takového v Nette napsat, přece víc hlav ⇒ víc nápadů a širší okruh vývojářů ⇒ najde se víc chyb. Pokud by to někoho zaujalo, napište mi pls PM.
- krissott
- Člen | 48
Díky Romane. Toto vlákno jsem nenašel a omlouvám se, že jsem vytvořil
další jému podobné.
Kouknul jsem se na to, zatím je to nad mé síly, ale ono se to poddá ;)
Jinak ja teď takové CMS už přichystávám. Mám to jako bakalářku.
Ale jelikož mi v pondělí začne zkouškové, tak se tomu začnu na 100%
věnovat až v únoru.
Ale rád se s tebou dohodnu. Moje icq máš…
Tak zatím čest.
- vlki
- Člen | 218
V reseni uloziste s id vidim neintegritu v tech url. Protoze pokud
existuje url o-fakulte/kalendar-akci
, pak je predpoklad, ze bude
existovat take stranka o-fakulte
, at uz to ma byt napr. jen
presmerovani na o-fakulte/kalendar-akci
. Jednoduche uloziste by
toto neresilo (pokud by nerozparsovavalo jednotlive url a ty fragmenty, pokud
v ulozisti neexistuji, presmerovavalo na ten vychozi tvar).
Prepsani Route
totiz dava i obrovskou volnost v tom smyslu,
jak se bude aplikace chovat.
- krissott
- Člen | 48
Co se tyce toho CMS. Co takhle zvolit nejaky typ komunikace. Forum mi
neprijde nejlepsi, kdyz s tim chceme trosku pohnout. Myslim, ze kdyz dame hlavy
dohromady, tak by z nas mohl vypadnout brzo pekny vytvor.
Navic muzeme prodiskutovat nektere problemy, ktere nam litaji hlavou.
Co takhle udelat IRC kanal, nebo nekde nejakou mistnost, nebo neco podobneho co je trosku rychlejsi nez fora. Nebo dokonce nejaky groupware. Udelelat na nejake domene mistecko a pomalu to rozjizdet. CO na to rikate?
- krissott
- Člen | 48
Ted jsem to chtel napsat vlki. Chtelo by to IRC kanal pro probrani aktualnich veci a problemu + nejake uloziste. Ted zalezi na tom, kde hotove veci sepisovat. Jestli nahodit nejaky groupware a nebo to jen hazet na nejaky web ci nette forum. To by musel ale dovolit David…
Takze Nette CMS tym:
Vlki
Roman
krissott
warden(asi)
jeste nekdo?
Nez neco zacnem, je treba urcite probrat par veci…
Muze to vypadat spontalne a narychlo, ale nejak se to rozhybat musi ne?
:)
Editoval krissott (18. 1. 2009 14:25)
- Honza Marek
- Člen | 1664
Já bych moh být expert na Texylu, pokud byste ji chtěli zakomponovat do CMS… S licencí si nemusíte lámat hlavu, protože ji chci beztak nějak zvolnit, aby se lidi nestyděli Texylu používat.
- krissott
- Člen | 48
Dalsi clen? Super
Tak ja bych se nejdrive dohodl na te komunikaci.
At nezatezujeme nette forum, tak udelam IRC kanal, kde to proberem.
Kouknete se zatim na tohle:http://www.linuxexpres.cz/…ebo-do-pekel
A za zminku sotji taky google groups:http://groups.google.cz/
Editoval krissott (18. 1. 2009 15:24)
- ViliamKopecky
- Nette hipster | 230
Rád se připojím (vám končí zkouškové, mě začíná předmaturitní…:)
Editoval enoice (18. 1. 2009 15:41)
- veena
- Člen | 98
Zkuste na project management http://www.assembla.com Je to zdarma, má to svnko a víc toolů pro vývojáře než basecamp.