Jak správně na multijazyčnost?
- JakubJarabica
- Gold Partner | 184
Keď som v routách používal <lang> a mal ho ako persistentný parameter v BasePresenteri, všetko fungovalo skvele. Bolo to na staršej verzii Nette(0.9.5 myslím), no nevšimol som si, že by sa odvtedy niečo v tomto smere menilo.
- arron
- Člen | 464
Ani napsal(a):
Lang musí být jako pesistent v presenteru. Když jsem psal, že by bylo fajn ovlivnit to na úrovni routy, tak tam někdo psal jaká je to blbost…
A porad si to myslim :-) Uz jenom proto, ze routa se ma proste starat o routovani a nejake peristentni parametry ji uz z principu maji byt ukradene. Navic peristentni parametr se musi nekam ukladat a fakt si nedovedu predstavit zpusob, jak budu rikat route, ze ten parametr ma ulozit do BasePresenteru (nebo kamkoliv jinam). Mno, ale je to samozrejme jenom nazor :-)
- arron
- Člen | 464
No jestli mas na mysli tento konkretni problem, tak reseni je vyse, ze jo :-)
Jestli mas na mysli peristentni parametry obecne, tak jejich implementace mi prijde zcela v poradku…
(ale jo, priznavam se, predchozi prispevek byl opravdu lehce OT :-) )
Editoval arron (8. 11. 2010 20:29)
- arron
- Člen | 464
No, mel jsem spis na mysli kombinaci vsech tech prispevku, ale v zasade ano:-)
Prijde mi, ze je to docela dobre popsane v dokumentaci
Funguje to v zasade tak, ze promena (rozumnej property tridy) presenteru
oznacena jako @persistent
se automaticky predava v url (pokud ma
jinou hodnotu nez je definovana jako vychozi). Cili na nej nemusis myslet pri
psani odkazu v template. To je v zasade vsechno (snad jsem postihnul tu
zakladni myslenku :-) ).
- jtousek
- Člen | 951
Díky vám oběma za vysvětlení. :) Ještě se zeptám na pár dotazů:
Perzistentní parametr tedy musím definovat v šabloně pouze když odkazuji z jiného presenteru anebo když chci změnit jeho hodnotu, je to tak? Kdy se ten perzistentní parametr ztratí? Ztratí se např. když zmáčknu F5?
- norbe
- Backer | 405
Perzistentní parametr se ztratí v případě, že přejdeš na presenter, který ho nemá definovaný, jelikož se přenáší v URL, F5 ho rozhodně neodstraní… Uvádět se musí, jak říkáš, když chceš změnit jeho hodnotu (při odkazování z jiného presenteru ji uvádět nemusíš, pokud nechceš použít jinou nežvýchozí hodnotu).
- arron
- Člen | 464
@redhead: jo, to jsem tam taky mohl dopsat, dik :-)
Kdyz se odkazujes z jineho presenteru, tak bud ho uvedes explicitne u odkazu, pokud chces, aby mel nejakou Tebou definovanou hodnotu, anebo bude mit vychozi hodnotu. Ten persistentni parametr se neztrati. Pokud bude mit jinou hodnotu, nez je vychozi, tak se bude (v ramci presenteru, ve kterem je definovany, a od neho zdedenych) prenaset automaticky v url (takze F5 ho nerozhodi :-) ). Pokud mu priradis vychozi hodnotu, tak ho v url neuvidis, ale samozrejme v tom presenteru ho mit budes :-)
Edit: A byl jsem pomalej ;-)
Editoval arron (8. 11. 2010 21:54)