Django python:未找到使用 DateInput --Required 参数“年份”(位置 1)

use*_*271 5 python django django-forms datefield django-widget

我正在尝试使用 DateInput,但Required argument 'year' (pos 1) not found在此处出现以下错误 {{ form.incident_date_time_reported|add_class:"form-control"}}(第 52 行)

表格.py

from django import forms
import datetime
from functools import partial
DateInput = partial(forms.DateInput, {'class': 'datepicker'})

class IncidentForm(forms.Form):

    incident_date_time_reported = forms.DateField(initial=datetime.date, required=False, widget=forms.DateInput)

    def search(self):

        # cleaning the data
        incident_date_time_reported = self.cleaned_data.get('incident_date_time_reported')

        query = Incident.objects.all()

        if incident_date_time_reported is not None:
            query = query.filter(incident_date_time_reported=incident_date_time_reported)


        return(query)
Run Code Online (Sandbox Code Playgroud)

索引.html

{% extends "base.html" %}
{% load widget_tweaks %}

{% block content %}
<div class="container-fluid">

    <!-----INPUT FORM------------------->
    <form action="{% url 'incidents:index' %}" method="GET">

        <div class="row">                       
            <div class="form-group col-md-3">
                <label>Date Incident Reported</label><br>
                {{ form.incident_date_time_reported|add_class:"form-control"}}
                {{ form.incident_date_time_reported.errors }}
            </div>
            <div class="form-group col-md-3">
                <label>------</label>
                <button type="submit" class="btn btn-primary btn-block">Search</button>
            </div>
        </div>
    </form>
</div><!-----END OF BOOTSTAP CONTAINER FLUID----->
{% endblock %}
Run Code Online (Sandbox Code Playgroud)

Adr*_*uta 9

datetime.date使用不正确。这是一个具有所有必需参数的函数。

如果您尝试使用当前日期进行初始填充,则应使用datetime.date.today().