Kdyby\Translator nepřekládá ve formu hodnoty v select/radio

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

Takhle to používám:

$this->translator = $translator->domain('pw.entryForm');

$form = new Form();
$form->setTranslator($this->translator);

$container->addRadioList('gender', 'gender', [
	'm' => 'male',
	'f' => 'female'
])->setRequired('genderRequired');

$arrival = $container->addContainer('arrival');
$arrival->addRadioList('transport', 'transport', $this->transportsRepository->findPairs());

A zobrazí to tu hodnotu (např male). Ani to nezobrazí s pw.entryForm před hodnotou a překlad nefunguje.

Jediné co funguje je

[
	'm' => $this->translator->translate('male'),
	'f' => $this->translator->translate('female')
]

Což u tohodle nevadí. Ale chtěl bych aby mě to překládalo i číselník z databáze.

Přitom label, placeholder, setRequire, … to přeloží normálně

Něco jsem přehlídl?


// EDIT:
Tak jsem přišel na viníka. Je to tím, že ty radia vykresluju ručně.

{foreach $competitor[gender]->items as $key => $label}
	<label n:name="competitors-$id-gender:$key">
		<input n:name="competitors-$id-gender:$key">{$label}
	</label>
{/foreach}

Nějakej nápad jak to zprovoznit? :-)

Editoval Oli (1. 3. 2016 12:37)

Oli
Člen | 1215
+
0
-

Níkdo neví? Nemůže to být bug v nette? Nebo to je feature a používám to špatne? @DavidGrudl?

David Grudl
Nette Core | 8282
+
0
-

Vypisuj $input->translate($label) nebo už ve foreach ($input->translate($input->items) as $key => $label)