Форма будет выкладывать неизвестное количество вопросов, которым ответят. каждый вопрос содержит подсказку, поле значения и поле единицы. Форма создается во времени выполнения в init методе formclass.
править: каждый подвергает сомнению, получает уникальную подсказку, которая будет использоваться в качестве маркировки, а также уникального списка единиц для избранного элемента.
это кажется случаем, идеально подходящим для повторяемой формы fieldsets, который мог быть легко разработан. но с тех пор fieldsets - такие как те, которые в django-form-utils, определяются как кортежи, они неизменны..., и я не могу найти способ определить их во времени выполнения. действительно ли это возможно, или возможно другое решение?
Править:
formsets с initial_data не является ответом - initial_data, просто включает установку значений по умолчанию для полей формы в formset., который список объектов не может быть отправлен choicefield конструктору посредством initial_data.
... если я не ошибаюсь.
Ознакомьтесь с наборами форм . Вы должны иметь возможность передавать данные для каждого из N вопросов как исходные данные . Что-то вроде этого:
question_data = []
for question in your_question_list:
question_data.append({'prompt': question.prompt,
'value': question.value,
'units': question.units})
QuestionFormSet = formset_factory(QuestionForm, extra=2)
formset = QuestionFormSet(initial=question_data)