Я хочу генерировать динамические формы в Django.Предположим, что у меня есть модель, которая содержит варианты выбора, который состоит из всех полей форм.Если мой пользователь выберет опцию Textarea и даст имя метки, форма будет отображать текстовую зону с данной меткой.Это может быть текстовый ввод, радио-кнопка и т. Д.
Итак, моя модель выглядит так:
TYPE_CHOICES = (
(u'TextField',u'TextField'),
(u'TextArea',u'TextArea'),
)
class SocietyForm(models.Model):
title = models.CharField(max_length=255)
slug = models.SlugField()
form_info = models.ForeignKey(FormInfo)
class FormInfo(models.Model):
label = models.CharField(max_length=255)
content_type = models.CharField(max_length=100,choices=TYPE_CHOICES)
form_info = models.ForeignKey(SocietyForm)
Пока все хорошо, но когда дело доходит до генерации виджетов, ну, я понятия не имею, здесь =Я подумал, что если я сгенерирую словарь в соответствии с выбранным выбором, я могу назначить его виджету формы
'''
def select_form_type(instance):
dict = {}
if instance.content_type == "TextField":
dict.update({'%s'instance.label:forms.TextInput()})
else:
dict.update({'%s'instance.label:forms.Textarea()})
return dict
'''
#class SocietyJoinForm(forms.ModelForm,instance):
Но SocietyJoinForm не распознает входные данные экземпляра.Так есть идеи?