1
好吧,Python的Django的 - Django的過濾器應用 - 基於模型自動生成searchfield
我第一次問一個問題在這裏,我沒有尋找類似的問題,但還沒有找到我的答案了..
我正在與Django一起交付一個簡單的應用程序,它顯示了客戶入住和退房概覽以及交付的一些詳細信息。
我有一個名爲「CheckInsListView」和「CheckOutListView」的視圖,我想根據django-filters應用程序在給定日期的用戶上過濾這些列表。
我嘗試以下鏈接:https://simpleisbetterthancomplex.com/tutorial/2016/11/28/how-to-filter-querysets-dynamically.html
現在的問題是,是不會自動創建searchform。它確實顯示了提交按鈕,但不生成表單字段。它也沒有出現任何錯誤。
有人可以指出我在這裏失蹤了什麼嗎?
由於提前,
凱文
#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})
和URL
#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 %}
我想你忘了在表單中添加'{%csrf_token%}' –
我不認爲我需要的CSRF令牌,CSRF令牌與method =「post」一起使用... –