Vymazaná hodnota u prompt
- Zdeno1981
- Člen | 115
Zdravím,
narazil jsem na problém, že se mi vymaže nastavená hodnota
u setPrompt(‚…‘) formuláře.
Našel jsem diskuzi, že to už taky někdo řešil ale zřejmě se to
nevyřešilo, viz https://github.com/…e/issues/316
Netuší někdo co by to mohlo způsobovat?
Mám továrničku, kterou volám na různých místech a následně do selectBoxu přes setItems překresuluji data podle potřebných parametrů, takže pokažde jsou jiné a když zobrazím formulář, tak ten prompt tam sice je, ale je prázdný…
public function factory(): Form
{
$form = new Form;
....
$form->addSelect('note_id', 'I know about production', [])
->setPrompt('Select note');
$form->onAnchor[] = function () use ($form) {
.....
$this->setNotes($form, $result_id);
};
return $form;
}
public function setNotes(Form $form, int $result_id): void
{
.....
$noteControl = $form['note_id'];
$noteControl->setItems($notes);
}
Editoval Zdeno1981 (24. 11. 2023 9:04)
- nightfish
- Člen | 518
@Zdeno1981 Buď použij Xdebug, nebo si dumpni
$this->prompt
někde kolem tohoto
místa + zjisti (opět Xdebugem nebo dumpem), v jakém pořadí se ti
volají metody setItems()
, setPrompt()
a
getControl()
na SelectBoxu. Není tam žádná magie, takže když
zavoláš setPrompt()
a setItems()
před
getControl()
, tak nevidím důvod, aby to nefungovalo.