я использую следующий код, чтобы обернуть все формы поля формы в formset вместе в DIV с Джанго хрустящих формами:Wrap каждой форма в formset с DIV в том числе неупомянутых полей с Джанго форм хрустящих
class OperatorForm(forms.ModelForm):
def __init__(self, *args, **kwargs):
super(OperatorForm, self).__init__(*args, **kwargs):
self.helper = FormHelper(self)
self.helper.form_tag = False
self.helper.all().wrap_together(Div, css_class="operator-form")
self.helper.render_unmentioned_fields = True
class Meta:
model = Operator
fields = tuple(fields_list)
Создание экземпляра FormHelper с «self» автоматически генерирует макет, не указывая все поля. Мне нужно это, потому что мои поля динамически генерируются. Проблема заключается в том, что поля DELETE и ORDER не добавляются в макет. Поэтому я устанавливаю для render_unmentioned_fields значение True. С этим параметром эти два поля по крайней мере отображаются в форме, но не обертываются остальными полями в div.
Я знаю, что могу вручную перебирать формы в наборе форм и обертывать их с помощью div, что я и делал до сих пор, но для этого требуется ручная обработка ошибок без формы набора форм, которые обычно делается автоматически хрустящим.
EDIT: Обновлен код в соответствии с запросом. Весь этот класс на самом деле завернут в заводский метод, который заполняет поля_имени, так что я могу динамически включать только определенные поля. ЗАКАЗ и УДАЛЕНИЕ исключены. Они автоматически обнаруживаются (включая их результаты в ошибке) и отображаются в форме, они просто не завернуты в div.
Опубликовать весь код в определении класса формы, пожалуйста. –
Вы намеренно покидаете поля DELETE и ORDER? –
Обновлено по запросу. @BrianDant –