Nerenderovat checkbox vnořený do label

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

Ahoj,

navrhl jsem si vlastní form renderer, a css frameworku se nelíbí, že nette defaultně renderuje checkbox jako

<label><input/></label>

potřeboval bych docílit tohohle

<label></label>
<input/>

jednoduše přetížená metoda render

MujRenderer.php

...
public function render(Nette\Forms\Form $form, $mode = null)
    {
        foreach ($form->getControls() as $control) {
            if ($control instanceof Controls\Button) {
                $control->getControlPrototype()->addAttributes(['class' =>'ui button']);

            } elseif ($control instanceof Controls\Checkbox ||
                $control instanceof Controls\CheckboxList ||
                $control instanceof Controls\RadioList) {
                //todo: weird checkbox nesting
                $control->getSeparatorPrototype()->setName('div')->addAttributes(['class' => ['ui', $control->getControlPrototype()->type]]);
            }
        }
        return parent::render($form, $mode);
    }

a chtěl bych to nechat v php v tom rendereru, vím, že kdybych si na renderování udělal šablonu, tak to půjde jednoduše, ale pro úplnost a případné další distribuování bych to chtěl nechat v php

Díky moc předem
Luboš