Python Django - django-filters app -基于模型自动生成搜索字段

好的,

我第一次在这里问问题,我确实搜索了类似的问题,但还没有找到我的答案。

我正在用Django开发一个简单的送货应用程序,它显示了客户签到和离开的概述,以及一些送货细节。

我有一个名为"CheckInsListView“和"CheckOutListView”的视图,我想根据django- filter应用程序在用户给定的日期过滤这些列表。

我试着点击这个链接:https://simpleisbetterthancomplex.com/tutorial/2016/11/28/how-to-filter-querysets-dynamically.html

现在的问题是,搜索表单不是自动创建的。它确实显示了submit按钮,但没有生成表单字段。它也没有出现任何错误。

有人能指出我这里错过了什么吗?

提前谢谢你,

凯文

#filters.py
   from .models import Delivery
   import django_filters

   class DeliveryFilter(django_filters.FilterSet):

    class Meta:
        model = Delivery
        fields = ['arrival_date']

添加视图:

#views.py  
"""
Create a search view to sort deliveries on date, django-filter app is used
"""

from django.shortcuts import render
from .models import Delivery
from .filters import DeliveryFilter

def search(request):
    delivery_list = Delivery.objects.all()
    delivery_filter = DeliveryFilter(request.GET, queryset=delivery_list)
    return render(request, 'all_deliveries.html', {'filter': delivery_filter})

和urls

#urls.py
from django.conf.urls import url
from . import views

urlpatterns = [
    url(r'^$', views.index, name='index'),
    url(r'^search/$', views.search, name='search'),
]

html格式的表单

{% extends "framework.html" %}

{% block content %}

<div class="form_search_header">
        <form method="get">
            {{ filter.form.as_p }}
            <button type="submit">Search</button>
        </form>
</div>

{% endblock %}

转载请注明出处:http://www.hengzou.net/article/20230526/2086852.html