jeden prvok vo viacerych formularoch

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

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
+
0
-

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.

srobowak
Člen | 27
+
0
-

dik to je presne to co som potreboval :) …v tomto pripade pouzijem kompoziciu lebo predpokladam, ze k tomu combo boxu v buducnosti pribudnu aj dalsie prvky