【问题标题】:Display all record on django-filter page startup在 django-filter 页面启动时显示所有记录
【发布时间】:2018-11-03 11:17:23
【问题描述】:

我有Empty result list on django-filter page startup 的逆问题。 我希望在启动时我的视图显示所有记录,然后用户才能应用过滤器。

我没有(在我的链接问题的回复中找到):

问题是,过滤器的默认视图是返回所有结果。

这是我的看法:

class EntrepriseList(LoginRequiredMixin, SingleTableMixin, FilterView):
    table_class = EntrepriseTable
    model = Entreprise
    template_name = 'stage/entreprise_list.html'
    filterset_class = EntrepriseFilter
    paginate_by = 30

还有我的过滤器:

class EntrepriseFilter(django_filters.FilterSet):
   nom = django_filters.CharFilter(lookup_expr='icontains', label='nom')
   ville = django_filters.CharFilter(lookup_expr='icontains', label='ville')
   class Meta:
       model = Entreprise
       fields = ['nom', 'ville', 'secteur']

答案:

事实证明,在 View 类中将 strict 变量设置为 False 一样简单。source

【问题讨论】:

  • 请为您的EnterpriseFilter添加代码。

标签: django django-filter


【解决方案1】:

这是 2.0 版本中的一个已知错误。一种解决方法是设置strict=False

https://github.com/carltongibson/django-filter/issues/930#issuecomment-410177356

【讨论】:

    猜你喜欢
    • 2012-12-05
    • 1970-01-01
    • 1970-01-01
    • 2017-06-28
    • 1970-01-01
    • 2018-06-13
    • 2020-05-25
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多