У меня есть форма (сгенерированная фабрикой форм) со специальным полем
def MyFormGenerator(data):
CHOICES = <created_using_data_value>
class MyForm(form.Form):
myfield = forms.ChoiceField(choices=CHOICES, widget=forms.RadioSelect)
return MyForm
Что мне нужно сделать, так это связать некоторые переменные python с каждым выбором, чтобы шаблон мог использовать их во время рендеринга (каждый выбор будет размещен в div с подробной информацией об этом выборе).
Я могу придумать 2 способа сделать это. (№ 1 предпочтительнее для гибкости) 1) Дайте шаблону отдельный список полей, которые должны отображаться (с включенными данными), и пусть шаблон захватывает и отображает каждое поле по мере необходимости. 2) Привяжите данные к полю, чтобы шаблон мог захватить и использовать их во время итерации.
Я почти могу сделать #1 (вручную создать поле ввода в шаблоне), но я не могу понять, как вызвать выбор поля по имени, используя переменную, так как трудно понять, что не работает, когда _some_field_ является переменной шаблона.
Прямо сейчас я буквально воссоздаю поле из SCRATCH в шаблоне (воссоздавая значения выбора и т. д.), но это далеко не идеально.