jeden prvok vo viacerych formularoch
- srobowak
- Člen | 27
Zdravim, potreboval by som mat jeden prvok, ktory je pouzity vo viacerych formularoch. Napriklad by som mal combo box na vyber kategorie, ktory sa plni polozkami z databazy, a ten by pouzivalo viac formularov. Ako by sa to dalo pekne vyriesit tak, aby som to plnenie poloziek nemusel davat do vytvarania kazdeho formulara zvlast?.
Mam na mysli, ci sa neda nejako spravit komponent, ktory by sa potom vkladal do jednotlivych formularov, alebo ci v nette neexistuje nejaky pekny sposob, ako by viac formularov mohlo mat spolocnu cast. Dik.
- llook
- Člen | 407
Tak zrovna ten kombobox bych udělal jako potomka Nette\Forms\Controls\BaseControl a do formulářů bych ho přidával potom takhle:
$form['category'] = new CategoryComboBox($this->categories);
Jinak lze zvolit různé strategie, zmíněnou dědičnost, kompozici, nebo třeba také Builder Pattern.