Nefunguje cachování překladů statických textů v latte/latte v3.0.4

m.brecher
Generous Backer | 863
+
0
-

Ahoj,

implementoval jsem si vlastní, jednoduchý Translator pro překlady statických textů v latte šablonách. Překlady fungují, ale přeložené texty se necachují do šablon, ale vždy se znovu všechny načítají z databáze.

Dokumentace Latte radí předat do Latte\Essential\TranslatorExtension druhý parametr $lang:

https://latte.nette.org/cs/develop#…

         // kód z dokumentace
$extension = new Latte\Essential\TranslatorExtension(
	$translator->translate(...),
	$lang,
);

Já používám Latte v rámci Nette a tam se Translator registruje v presenteru (poradil @MarekBartoš) a tak jsem zkusil předat $lang jako druhý parametr do metody setTranslator():

final class FrontPresenter extends BasePresenter
{
    #[Persistent]
    public string $lang;

    public function __construct(
        .....
        private Translator $translator,
    )
    {}

    .....

    public function beforeRender()
    {
        parent::beforeRender();
        .....
        $this->translator->setLang($this->lang);
        $this->template->setTranslator($this->translator, $this->lang);  // předání $lang pro Latte
    }
}

Statické texty v šablonách se ale necachují a i nadále se načítají z databáze. Všechny překládané texty jsou tohoto typu:

<h2>{translate}Kontakt{/translate}</h2>

Prosím o radu jak zajistit, aby cachování překladů fungovalo.

Děkuji

Editoval m.brecher (16. 1. 2023 18:18)

m.brecher
Generous Backer | 863
+
0
-

Ahoj,

posílám další poznatky z testování:

  • na produkčním serveru cachování překladů šablon Latte FUNGUJE.
  • na vývojovém serveru na Windows cachování překladů NEFUNGUJE
  • zkoušel jsem promazat cache, nepomohlo to
  • vývojový i produkční server mají stejné verze Nette/Latte a oba PHP 8.1

Editoval m.brecher (16. 1. 2023 18:43)

m.brecher
Generous Backer | 863
+
0
-

Vyzkoušel jsem poslední vývojářskou verzi latte/latte:^3.0.5-RC1 a tam cachování překladu šablon na Windows latte FUNGUJE.

Takže je to OK

Editoval m.brecher (16. 1. 2023 21:08)