Nette Kdyby/Translation - jak překládat obsah z databáze dle $locale?

Co nejvíce stručné řešení pro vývojáře a linux administrátory

Na superuser.cz nenaleznete žádný zbytečný obsah, vždy se jde přímo k věci, denně se zde objevují nové problémy a jejich řešení...

Začít používat

Nette Kdyby/Translation - jak překládat…

25.06.2019 napsal Bulík

Vyřešeno Nette Kdyby/Translation - how translate content from database
Dobrý den,

používám v Nette Kdyby/Translation na překlad statického obsahu na multijazyčném webu a to funguje dobře. Jak ale jednoduše překládat obsah z databáze? Dejme tomu, že mám v databázi sloupec "popis" a přidám ho tam ještě anglicky jako "popis_en", jak to pak vyhodnotím přes if?

Zobrazit odpovědi

Nejlépe hodnocení uživatelé
Hanz

Počet UP: 5140

React: 223

Rusty

Počet UP: 2363

React: 105

OL3G

Počet UP: 1651

React: 64

Strosmajer

Počet UP: 501

React: 29

Oxytocin

Počet UP: 303

React: 27

SYSTEM

Počet UP: 443

React: 23

Hyacint

Počet UP: 43

React: 20

Odpovědi na dotaz

RE: Nette Kdyby/Translation - jak…

04.07.2019 odpověděl Hanz

Zkontrolováno

Dobrý den,

jako první si z BasePresenteru posílejte do šablony $locale:
$this->template->locale = $this->locale;

A v samotné šabloně pak můžete jen vyhodnocovat, zda se zobrazí překlad z databáze ze sloupce popis či popis_en:
{if $locale == 'en'}{$r->popis_en}{else}{$r->popis}{/if}
Tento web používá k poskytování služeb, personalizaci reklam a analýze návštěvnosti soubory cookie. Používáním tohoto webu s tím souhlasíte. Další informace