【发布时间】:2017-10-26 16:50:27
【问题描述】:
我正在努力使用 django rest 框架和 django-filters (http://django-filter.readthedocs.io/en/master/) 过滤出生日期的生日。
最大的问题是使用 django 通用过滤器我需要做类似的事情
class birthdayFilter(django_filters.rest_framework.FilterSet):
day = django_filters.RangeFilter(name="born_date__day")
month = django_filters.RangeFilter(name="born_date__month")
class Meta:
Model = User
fields = ['day','month']
如果用户选择这样的时间段,就会出现问题: 27/11 至 1/12
在这种情况下,我总是会收到一个空的服务器响应,因为默认情况下它会尝试获取天数大于 27 且小于 1 的日期,而这总是无。
另一个问题是如果用户选择了类似的东西: 27/10 至 1/01 或 27/10 至 1/12
我认为解决方案是自己动手编写自己的过滤器,但是 django 过滤器的文档并不清楚如何做到这一点。
【问题讨论】:
-
我不确定您的模型结构如何。但是一个 DateField 然后一个简单的 django 查询有什么问题。
标签: django django-rest-framework django-filters