Django 如何使用相同的列表过滤器过滤多个日期字段
我正在尝试制作一个自定义列表过滤器来输入一个日期,然后应用程序使用这个日期按多个字段(而不仅仅是一个)进行过滤。 我试过lib,但这是在两个输入日期之间按一个字段进行过滤 我需要的是通过几个字段(date1、date2、date3…)进行筛选,其中只有一个输入日期:Django 如何使用相同的列表过滤器过滤多个日期字段,django,django-admin,django-filters,Django,Django Admin,Django Filters,我正在尝试制作一个自定义列表过滤器来输入一个日期,然后应用程序使用这个日期按多个字段(而不仅仅是一个)进行过滤。 我试过lib,但这是在两个输入日期之间按一个字段进行过滤 我需要的是通过几个字段(date1、date2、date3…)进行筛选,其中只有一个输入日期: MyModel.objects.filter(date1__gte=InputFilterDate, date2__gte=InputFilterDate,...) 我看到的所有其他自定义过滤器都必须设置一个可能值的列表,但我没有
MyModel.objects.filter(date1__gte=InputFilterDate, date2__gte=InputFilterDate,...)
我看到的所有其他自定义过滤器都必须设置一个可能值的列表,但我没有可能值,我需要一个日历或类似的东西来输入单个日期
你知道任何类似DateRangeFilter的库,或者一个神奇的Django API技巧吗?你可以覆盖模板文件夹
admin/中的更改列表,以添加具有正确块名的css文件,并且不要忘了调用{{block.super}
来包含管理员的更改列表代码,否则你将覆盖它
{% extends "admin/change_list.html" %}
{% block filters %}
{{ block.super }}
<form action="" method="get" id='date_filter_form'>
<input type="text" class="datepicker" id="date_picker">
</form>
{% endblock %}
{% block extrahead %}
{{ block.super }}
<script type="text/javascript">
(function($) {
var fields = ['date1__gte', 'date2__gte'];
$(document).ready(function($) {
$("#date_filter_form").submit(function(){
for (var i = 0; i < fields.length; i++) {
$('#date_picker').clone().attr(
'name', fields[i]).appendTo($(this));
};
return true;
});
});
})(django.jQuery);
</script>
{% endif %}{% endif %}
{% endblock %}