Django RadioSelect字段无法正确呈现

时间:2020-01-03 12:23:38

标签: django django-forms django-templates django-filter

我正在使用Django FilterSet来使用户能够过滤我网站上的产品列表。一切工作正常,我正在使用标准的html代码显示表单。但是,有一个RadioSelect字段没有呈现正确性,我不明白为什么。我在代码的相关部分以及呈现问题的屏幕截图下方为您提供。有谁知道我该怎么解决?

filters.py

class PlatFilter(django_filters.FilterSet):
    titre = django_filters.CharFilter(
        field_name='titre', label='Mot clé :', lookup_expr='icontains',
        widget=forms.TextInput(attrs={'class': 'form-control'}),
    )
    prix_min = django_filters.NumberFilter(
        field_name='prix', label='Prix minimum :', lookup_expr='gte',
        widget=forms.NumberInput(attrs={'class': 'form-control'}),
    )
    prix_max = django_filters.NumberFilter(
        field_name='prix', label='Prix maximum :', lookup_expr='lte',
        widget=forms.NumberInput(attrs={'class': 'form-control'}),
    )
    nb_portions = django_filters.NumberFilter(
        field_name='nb_portions', label='Nombre de portions minimum :', lookup_expr='gte',
        widget=forms.NumberInput(attrs={'class': 'form-control'}),
    )
    date_prep = django_filters.DateFilter(
        field_name='date_prep__date', label='Date de préparation (format JJ/MM/AAAA)', lookup_expr='exact',
        widget=forms.DateTimeInput(attrs={'class': 'form-control'}),
    )

    CHOICES = ((True, 'Oui'), (False, 'Non'))

    is_delivering = django_filters.BooleanFilter(
        field_name='chef__is_delivering', label='Livraison comprise',
        widget=forms.RadioSelect(attrs={'class': 'form-control'}, choices=CHOICES),
    )

    class Meta:
        model = Plat
        fields = ['titre', 'nb_portions', 'date_prep']

html文件(使用Bootstrap)

<div class="col-md-3">
  <div class="filters shadow-sm rounded bg-white mb-4">
    <div class="filters-header border-bottom pl-4 pr-4 pt-3 pb-3">
      <h5 class="m-0" style="font-size: 200%">Filtrer par</h5>
    </div>
    <div class="filters-body">
      <form method="get">
         <div class="well">
           <div class="row">
              <div class="col-md-12 pl-5 pb-4 pt-4 pr-5">
                {% csrf_token %}
                {% for field in filter.form %}
                <div class="fieldWrapper form-group" style="font-size: 150%">
                   {{ field.label_tag }}
                   {{ field }}
                </div>
                {% endfor %}

                <button type="submit" class="btn btn-primary">
                   <span class="glyphicon glyphicon-search"></span> Rechercher
                </button>
            </div>
           </div>
         </div>
      </form>
    </div>
  </div>
</div>

问题的屏幕截图: rendering problem

0 个答案:

没有答案