【问题标题】:How do you set a default value for django-filter select field instead of a blank field?如何为 django-filter 选择字段而不是空白字段设置默认值?
【发布时间】:2020-07-29 10:36:07
【问题描述】:

我正在使用 django-filterapp 过滤前端的项目,但我似乎无法理解如何使用默认值而不是空白 -------- 空间填充下拉选择字段中的第一个值在现场,这对用户体验非常不利,因为我不使用标签,因此用户将无法识别没有某种占位符的字段。这就是我得到的。

【问题讨论】:

标签: python django django-filter


【解决方案1】:

通过为过滤器创建一个类并从过滤器集继承并使用 empty_label 属性,如下例所示:

过滤器类:

class StudentFilter(django_filters.FilterSet):

    student__nationality = ModelChoiceFilter(queryset=Nationality.objects.all(), empty_label=_('Nationality'))

    class Meta:
        model = Student
        fields = {
            'student__nationality': ['exact'],
        }

在视图中只使用这个命令:

model = Student
filterset_class = StudentFilter

如需了解更多信息,请查看 (https://django-filter.readthedocs.io/en/master/ref/filterset.html)

【讨论】:

  • 完美运行!也非常感谢你的链接,澄清了一切。
猜你喜欢
  • 2012-10-22
  • 2019-06-03
  • 2020-07-13
  • 2014-04-11
  • 2022-11-09
  • 2013-12-29
  • 1970-01-01
  • 1970-01-01
  • 2012-01-25
相关资源
最近更新 更多