Шаблон не отображает каждое поле в MultiValueField
Пытаясь создать подкласс MultiValueField под названием TagField, я не уверен в том, как следует отрисовывать каждый виджет поля формы. Предполагается, что должно быть 4 x TextInput элемента. Изначально я попробовал {{ field }} в шаблоне, но он отображает только первый виджет TextInput.
Когда это не помогло отобразить все четыре входных элемента, я попробовал {% for input in field %}, и это по-прежнему отображает только первый входной элемент. Что еще нужно сделать, чтобы в шаблоне отобразились все четыре элемента ввода?
class TagField(MultiValueField):
def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
self.require_all_fields = False
self.help_text = kwargs["help_text"]
for i in range(4):
field = CharField(**{
"min_length": 1, "max_length": 25, "widget": TextInput(
attrs={"class": "question_input_field"}
), "validators":[
RegexValidator("[<>`':;,.\"]", inverse_match=True)
]
})
if i == 0:
field.attrs.update({
'required': True, "error_messages": {
'incomplete': "Provide at least 1 tag for your question"
}
})
else:
field.required = False
self.fields.append(field)
def compress(self, data_list):
data_list = set([tag.lower().strip() for tag in data_list])
return data_list