contributte/translation – doplění proměnné

motorcb
Člen | 552
+
0
-

Zdravím,

pokouším se o prvním multijazykovou aplikaci. Použil jsem contributte/translation

Nyní bych chtěl přeložit tuto chybu:

$form->addError('E-mail ' . $values['email'] . ' není zaregistrovaný');

Jak na to? Musím text uložt v překladači jako 2 texty a pak je spojit? Nebo to jde nějak přes proměnnou? Díky

Marek Bartoš
Nette Blogger | 1280
+
0
-

$form->addError($this->translator->translate('message', ['email => '$values['email']]), false)

Píšu z hlavy, tak snad je to správně. Do zpráv, které si formulář překládá sám nemáš jak předat parametry zprávy, takže je třeba zprávu nejdřív přeložit a teprve pak ji formuláři předat. V takovém případě potřebuješ překládání zpráv formulářem zakázat (v tomhle případě druhým parametrem nastaveným na false)

Obecně vzato bych doporučil překladač ve formuláři nepoužívat a namísto toho si vše překládat sám.

V tomhle konkrétním případě by bylo ideální chybu zobrazit u inputu ‚email‘ namísto u formuláře a tak nemusí být v chybě uvedena hodnota inputu.