Django 1.6
У меня есть рабочий блок кода в классе формы Django, как показано ниже. Набор данных, из которого я создаю список полей формы, может включать начальное значение для любого из полей, и я не успеваю установить это начальное значение в форме. В приведенном ниже блоке if field_value:
действительно заполняется атрибут исходного словаря формы, но начальное значение не отображается. Обратите внимание, что (в случае, если вам интересно) атрибут .initial
не существует до тех пор, пока не будет вызван вызов super()
.
Можно ли это сделать?
Если да, то что я не делаю правильно, чтобы сделать эту работу?
Спасибо!
def __init__(self, *args, **kwargs):
id = kwargs.pop('values_id', 0)
super(LaunchForm, self).__init__(*args, **kwargs)
# Lotsa code here that uses the id value
# to execute a query and build the form
# fields and their attributes from the
# result set
if field_value:
self.initial[field_name] = field_value