Nefunkční překlad formuláře renderovaného ručně
- thunderbuff
- Člen | 164
Mám velmi zajímavý problém. Ručně vykreslovaný formulář({form MujForm}…{/form}) se mi nepřeloží. Ale pokud ho renderuji automaticky ({control mujForm}), přeloží se správně. Pokud ho dám a stránku přes {control mujForm} a společně s tím i přes {form MujForm}, přeloží se oba. Máte tip, čím to může být?
Editoval thunderbuff (10. 4. 2013 13:38)
- thunderbuff
- Člen | 164
v BaseFormu (který extenduje UI\Form) mám:
<?php
public function render() {
$this->setTranslator($this->translator);
parent::render();
}
?>
- duke
- Člen | 650
To se pak nemůžete divit. Metoda render
se při ručním
renderování formuláře vůbec nevolá…
Translator nastavujte buď hned po vytvoření Formu, nebo např. při jeho
připojení k presenteru.
A ta konstrukce:
$this->setTranslator($this->translator);
… mi také není moc jasná. Vždyť metoda setTranslator
má
za úkol nastavit právě $this->translator
. Tak jaký smysl má
nastavovat ho na hodnotu, na kterou již nastaven je? Předpokládám, že jde
o nějaký překlep…
Editoval duke (10. 4. 2013 16:10)
- thunderbuff
- Člen | 164
Díky za nakopnutí správným směrem, měl jsem torchu magie v konstruktoru, stačilo upravit jeden řádek. Díky!