Как я могу использовать наборы полей в шаблоне django для Django 3.0

Здесь я использую python версии 3.7.10 и Django 3.0

Мои наборы полей прекрасно работали на python 2.7 и Django 1.8

Вот мой forms.py

class CampaignMainForm(forms.ModelForm):

    class Meta:

        model = Campaign

        exclude = ['campaign_create_send_id',
                   'list_id',
                   'name',
                   'subject',
                   'created_by',
                   'send_datetime',
                   'send_timezone']
        fieldsets = [
            ['group',{
                'fields': ['group'],
                'legend': "Recipients",
            }],
            ['template',{
                'fields': ['stored_template'],
                'legend': "Template",
            }],
            ['templatedata',{
                'fields': ['stored_template_data', 'stored_template_data_validated'],
                'legend': "Template Content",
            }],
        ] 

Теперь в моем шаблоне, как я пытался

{% for fieldset in form.fieldsets %}
    <fieldset{% if fieldset.name != "templatedata" %} class="accordion-group"{% endif %}>
       {% if fieldset.name != "templatedata" %}
           <legend><bull class="bull {% if fieldset.legend == "Recipients" %}{% if object.group != None %}label-color-0d0{% endif %}{% elif fieldset.legend == "Template" %}{% if object.stored_template != None %}label-color-0d0{% endif %}{% else %}label-color-0d0{% endif %}"></bull> <a href="#" class="collapse-title" data-toggle="collapse" data-target=".collapse-{{ fieldset.legend|slugify }}" data-parent="#main-accordian">{{ fieldset.legend }}</a>
                         <small class="muted">{% if fieldset.legend == "Template" %}{% if object.stored_template != None %}{{ object.stored_template.name }}{% endif %}{% endif %}{% if fieldset.legend == "Recipients" %}{% if object.group != None %}{{ object.group }} ({{ email_valid_count }} emails){% endif %}{% endif %}</small>
                    </legend>
     .....
     .....
{% endfor %}

Но здесь мой цикл for работает неправильно. На самом деле мне нужно, чтобы если fieldset.name != "templatedata", то он должен отобразить fieldset.legend == "Recipients" ....

он не работает нормально в моем Django 3.0 Как я могу заставить его работать

Вернуться на верх