Kdyby/Translator – problém s překladem Phrase
- chikeet
- Člen | 160
Ahoj,
mám problém s překládáním Phrase ve flash message po odeslání
formu – dostávám warning
strtr() expects parameter 1 to be string, object given
Při bližším zkoumání to vypadá, že metoda
Symfony\Component\Translation\Translator::trans
dostává jako
výstup z
$this->getCatalogue($locale)->get((string) $id, $domain)
instanci Nette\Neon\Entity
, přičemž očekává string.
Když si vygeneruju testovací flash message v presenteru takto
public function actionDefault()
{
$this->flashSuccess(new Phrase('form.testPhrase', NULL, ['count' => 123]));
}
tak je vše v pořádku.
V configu mám:
translation:
default: cs
fallback: [cs_CZ, cs]
Problém se začal projevovat pravděpodobně po updatu composeru, ale nedaří se mi přijít na to, jestli je pes zakopaný v Kdyby\Translatoru, nebo Symfony\Translatoru, nebo jinde. Nejdivnější je na tom, že v presenteru to normálně funguje, v komponentě po odeslání formu ne…
- Pavel Kravčík
- Člen | 1196
Nejdivnější je na tom, že v presenteru to normálně funguje, v komponentě po odeslání formu ne…
A nezmizí nějaký parametr, který by měl být třeba persistentní?
- David Matějka
- Moderator | 6445
ahoj, jak vypada ta testPhrase prelozena v neonu? nejsou tam nejake
()
?
- chikeet
- Člen | 160
David Matějka napsal(a):
ahoj, jak vypada ta testPhrase prelozena v neonu? nejsou tam nejake
()
?
Díky moc, vyřešeno! Byly to závorky hned v první flash message posílané z toho formu. Nenapadlo mě, že v tom může být problém, protože v IDE vypadal neon validně a i parsování v aplikaci prošlo hladce.