Jde vypnout překlad jen pro obsah inputu, label přeložit normálně?

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
Oli
Člen | 1215
+
+1
-

Ahoj,
chtěl bych vypnout překlad pro select hodnoty, ale nechat ho zapnutej pro label.

Tohle (očekávatelně) nepřeloží label

$form = Form;
$form->setTranslator($this->translator); // $this->translator obsahuje $translator->domain('domain.registerForm');

$form->addSelect('user', 'user', $this->usersDao->findUsers())->setTranslator(NULL);

Tohle funguje tak jak potřebuju:

$form->addSelect('user', $this->translator->translate('user'), $this->usersDao->findUsers())->setTranslator(NULL);

Jde to nějak napsat tím prvním způsobem aby se to chovalo tím druhým způsobem?
Asi jsem se uplně nevyjádřil dobře, ale snad to pochopíte :-)

Marsme
Člen | 75
+
0
-

Řešil jsem to nedávno a pokud vím je ten druhý zápis jediná cesta jak toho docílit.

David Grudl
Nette Core | 8282
+
+8
-

Navrhuji upravit formuláře tak, aby se label a prompt překládal nezávisle na vypnutém translatoru. Je to sice BC break, ale ihmo užitečný.

japlavaren
Člen | 404
+
+1
-

Ja som proti. Ak budem ťahať labely z databáze, ako docielim, aby sa neprekladali? Zrušiť translator formu a nastavovať ho všetkým prvkom formuláru?

Filip Klimeš
Nette Blogger | 156
+
0
-

japlavaren napsal(a):

Ja som proti. Ak budem ťahať labely z databáze, ako docielim, aby sa neprekladali? Zrušiť translator formu a nastavovať ho všetkým prvkom formuláru?

Jaký máš důvod tahat labely z databáze? Jde o to, že s případem, kdy chci překládal pouze labely, se setkávám velmi často (a musím ho řešit tak jak je popsané výše), kdežto s opačným ne.

Editoval FilipKlimeš (30. 1. 2015 10:48)

japlavaren
Člen | 404
+
0
-

FilipKlimeš napsal(a):

japlavaren napsal(a):

Ja som proti. Ak budem ťahať labely z databáze, ako docielim, aby sa neprekladali? Zrušiť translator formu a nastavovať ho všetkým prvkom formuláru?

Jaký máš důvod tahat labely z databáze? Jde o to, že s případem, kdy chci překládal pouze labely, se setkávám velmi často (a musím ho řešit tak jak je popsané výše), kdežto s opačným ne.

konkrétny príklad nemám, len rozmýšlam nahlas. bol by som radšej za metódu ktorou by som nastavil, aby sa neprekladali optiony ako aby si pri vypnutom translatore ho control dohľadal u parenta

webdata
Člen | 153
+
0
-

FilipKlimeš napsal(a):

japlavaren napsal(a):

Ja som proti. Ak budem ťahať labely z databáze, ako docielim, aby sa neprekladali? Zrušiť translator formu a nastavovať ho všetkým prvkom formuláru?

Jaký máš důvod tahat labely z databáze? Jde o to, že s případem, kdy chci překládal pouze labely, se setkávám velmi často (a musím ho řešit tak jak je popsané výše), kdežto s opačným ne.

Já příklad mám. Cca před rokem jsem dělal aplikaci, kde byl požadavek vytvářet si šablony formulářů. Kde si uživatel mohl definovat vlastní formulář. „Design“ toho formuláře se ukládal do databáze.

David Matějka
Moderator | 6445
+
+2
-

@webdata ale v takovem pripade predpokladam, ze tam nebylo (skoro) nic, co by vyzadovalo preklad, ne? takze by bylo lepsi vypnout translator pro cely form..

Filip Klimeš
Nette Blogger | 156
+
0
-

japlavaren napsal(a):

konkrétny príklad nemám, len rozmýšlam nahlas. bol by som radšej za metódu ktorou by som nastavil, aby sa neprekladali optiony ako aby si pri vypnutom translatore ho control dohľadal u parenta

Taky přemýšlím a právě mě nic nepadlo, takže v rámci KISS bych to klidně nechal takhle :)