contributte/translation a kombinácia prekladov z yaml a databázy
- steelbull
- Člen | 240
Potreboval by som docieliť kombináciu načítania prekladov z yml aj
databázy (v databáze budú uložené len preklady, ktoré pozmenia/prepíšu
preklady z yml). Dá sa to nejak prosím vyriešiť priamo prostredníctvom
„contributte/translation“ alebo musím vytvoriť vlastnú službu/logiku,
ktorá sa o to postará?
Veľmi pekne ďakujem.
Editoval steelbull (26. 12. 2023 15:08)
- dms
- Člen | 87
Neřešil bych to načítáním z 2 zdrojů, ale udělal jeden finální zdroj. Buď převedeš vše z yaml do db a budeš mít pak jeden DB loader, který vše načítá přímo z DB. Nebo při uložení do db vygeneruješ yaml, který bude spojením původních yaml dat aktulizovaných o yaml z databáze. Pak použiješ yaml loader na ten nově vygenerovaný yaml soubor. Pozor, že při aktualizaci překladů je potřeba vždy mazat cache (něco jako FileSystem::delete(TEMP_DIR . ‚/cache/translation‘))
- steelbull
- Člen | 240
dms napsal(a):
Neřešil bych to načítáním z 2 zdrojů, ale udělal jeden finální zdroj. Buď převedeš vše z yaml do db a budeš mít pak jeden DB loader, který vše načítá přímo z DB. Nebo při uložení do db vygeneruješ yaml, který bude spojením původních yaml dat aktulizovaných o yaml z databáze. Pak použiješ yaml loader na ten nově vygenerovaný yaml soubor. Pozor, že při aktualizaci překladů je potřeba vždy mazat cache (něco jako FileSystem::delete(TEMP_DIR . ‚/cache/translation‘))
Ahoj @dms, njn, viem, čakal som takú odpoveď. Ale mám multijazyčnú appku, kde sú preklady preložené automaticky pomocou AI, kontribútori majú navyše možnosť preklady ešte aktualizovať, spolupracovať, komentovať atď. a do novej verzie appky sa už dostane len finálny yml, ktorý ale potrebujem mať možnosť v niektorých príp. prepísať prekladmi z DB. Mať všetky preklady v DB by pri viacerých inštanciách appky bolo podľa mňa dosť komplikované + musel by som navyše ešte riešiť, či daný „translation key“ bol preložený mnou v rámci vývoja alebo niekým iným na úrovni appky, navyše pri zmenách prekladu a viacerých inštanciách appky na produkcii by to bolo ešte komplikovanejšie udržiavať preklady všetkých inštancií aktuálne.
Tento prístup (prepisovania prekladov) sa mi osvedčil aj v iných projektoch mimo nette, preto by som ho rád použil aj tu. Ale neviem, či si musím vytvoriť nejaké „zlepšovadlo“ alebo je možné kombinovať preklady zo súborov a DB priamo v „contributte/translation“.
Ďakujem.