překlad – začínám, prosim o popostrceni
Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
- simPod
- Člen | 383
Zdravim,
potreboval bych udelat dvou jazycnou aplikaci. Nikdy jsem se v nette
s prekladanim nesetkal, takze bych prosil o par rad.
Budu potrebovat prelozit jak obsah tak i adresy. Zacal bych asi nejdrive prekladem tech adres.
Dotazy k prekladu adres:
- musim predavat <lang> do Routeru a mit ho pak v adrese? Radeji bych adresu bez zkratky jazyka, jen s prelozenou casti URL: (http://myweb.cz/sections | http://myweb.cz/sekce
- pokud tam ten lang mit musim, tak jsem uz zkousel pridat
[<lang [a-z]{2}>/]
do Routeru, ale nejaky efekt jsem nezaznamenal. Musim nekde lang definovat? - tot prozatim vse k adresam
Dotazy k prekladu obsahu:
- koukal jsem na https://doc.nette.org/…on/templates#…, tam se pise ze si mam vytvorit tridu pro translate. Kam mam tu tridu umistit, do souboru s BasePresenterem?
- nejaky kod mam vlozit do funkce translate, aby mi to zacalo prekladat. Chtel bych obsah nacitat asi z databaze. Nejaka doporuceni, co pro preklad pouzit? Staci modul napojeny na databazi, kam mu poslu string a jazyk?
- jak zjistim/zprovoznim jaky jazyk je zrovna nastaven?
pravdepodobne jsem ve vsem uplne mimo, ale z dokumentace jsem toho bohuzel moc nevycetl a nevim od ceho se odpichnout. Moc dekuji
- Ani
- Člen | 226
Ahoj,
- Ne nutně, pokuď zaručíš unikátnost těch url (co třeba http://myweb.cz/web), řekl bych že moc chytré řešení to není.
- Lang by pak měl být definován jako persistentní proměná v base presenteru.
- Třídu si můžeš dát kam chceš, ale tak aby ji načetl robotloader.
- O tom co použít na překlad tu je napsáno hodně (zkus hledat gettext a pročíst všechna vlákna)
- Viz přechozí
- Záleží podle čeho ho chceš určovat nicméně koukni na https://doc.nette.org/cs/http/request metoda detectLanguage()
- Václav Mašín
- Člen | 34
Shodou okolností jsem teď taky lokalizaci v nette řešil. Hodně mi pomohlo tady toto vlákno: https://forum.nette.org/…extractor-v2.