Есть несколько вопросов относительно форм.
1. Как составить форму на основе динамических данных?
К примеру у нас есть некая api которая выводит список говорящих по телефону сотрудников call center.
[ 'Вася', 'Лена', 'Петя']
Решил эту задачу посмотрев чуть в исходники, через одно странное место.
class User(forms.Form): def __init__(self): forms.Form.__init__(self) persons = CallcenrAPI() # person = [ 'Вася', 'Лена', 'Петя'] for person in persons: self.fields.update({'busy' + person: forms.BooleanField()})
2. Как передать форму дополнительные данные.
Допустим описанная выше API возвращает следующие данные
[ ('Вася', 12), ( 'Лена', 23), ('Петя', 63)]
<p title="12"> Вася </p>
3. Возможно ли как то переопределить названия полей в html в случае методов .as_(p|ul|table)?
from django import forms class User(forms.Form): Nekoe_moe_imy_person_one = forms.BooleanField() Nekoe_moe_imy_person_two = forms.BooleanField() Nekoe_moe_imy_person_fhree = forms.BooleanField() In [7]: c = User(auto_id=False) In [8]: c.as_table()
<tr><th>Nekoe moe imy person one:</th><td><input type="checkbox" name="Nekoe_moe_imy_person_one" /></td></tr>\n<tr><th>Nekoe moe imy person two:</th><td><input type="checkbox" name="Nekoe_moe_imy_person_two" /></td></tr>\n<tr><th>Nekoe moe imy person fhree:</th><td><input type="checkbox" name="Nekoe_moe_imy_person_fhree" /></td></tr>
Имена ссылок явно не подходят для представления полей форм. Да и вообще это внутренняя структура зачем ее наружу вытаскивать.
Возможно ли передовать некий alias для представления формы в html посредствам готовых методов as_p, as_ul, as_table?
