Я использую учебное руководство по http://proteus-tech.com/blog/cwt/django-dynamic-form/ для создания динамических форм. Это работает идеально подходящее для создания форм, но я хотел бы использовать некоторые исходные данные с виджетом Текстовой области. Это - код, который работает из учебного руководства без любых определенных виджетов:
from django import forms
form_config = {'title':'CharField', 'email':'EmailField', 'active':'BooleanField'}
dynamic_form = forms.Form()
for key in form_config.keys():
dynamic_form.fields.insert(-1, key, getattr(forms, form_config.get(key))())
print dynamic_form.as_table()
Я пытался просто добавить виджет к form_config:
form_config = {'title':'CharField(widget=forms.Textarea)'}
Но это дает мне, "объект модуля не имеет никакого атрибута" ошибка. Существует ли способ добавить виджет к динамической форме?
Я обнаружил, что есть гораздо лучший способ сделать это, используя type(). Здесь есть отличный учебник: http://www.b-list.org/weblog/2008/nov/09/dynamic-forms/