Django管理员在空日期过滤

时间:2011-09-14 12:28:13

标签: django django-admin

日期django admin的过滤器选项是:

任何日期 今天 过去7天 这个月 今年

添加过滤空白日期的“无”的最简单方法是什么?

3 个答案:

答案 0 :(得分:1)

我刚为此目的编写了一个自定义过滤器。它扩展了Django admin的默认DateTimeListFilter并添加了" None"和"不是没有"选项,做你认为他们做的事。

https://djangosnippets.org/snippets/10566/

然后你可以继续使用它:

class MyAdmin(ModelAdmin):
    list_filter = (('my_date_field', DateFieldListFilterOrNull),
                  )

答案 1 :(得分:0)

认为您正在寻找__isnull后缀。例如:

>>> mymodels = MyModel.objects.filter(mydate__isnull=True)
>>> mymodels[0].mydate
(no response)
>>>

答案 2 :(得分:0)

您必须注册自己的过滤器 - 请查看Custom Filter in Django Admin on Django 1.3 or belowhttp://twigstechtips.blogspot.com/2010/10/django-create-custom-admin-model-filter.html或许多其他地方,了解相关操作。

关于您的特定要求,http://djangosnippets.org/snippets/1963/上的“IS NULL / IS NOT NULL”过滤器的片段