【发布时间】:2017-01-31 02:36:33
【问题描述】:
如何在 Django Admin 中使用范围输入为数字数据创建过滤器?
附:只发现了这个类似的问题,但这里只建议如何按具体范围分组,最后一个问题活动是 2 年前。
Django Admin: How do I filter on an integer field for a specific range of values
【问题讨论】:
标签: python django django-admin
如何在 Django Admin 中使用范围输入为数字数据创建过滤器?
附:只发现了这个类似的问题,但这里只建议如何按具体范围分组,最后一个问题活动是 2 年前。
Django Admin: How do I filter on an integer field for a specific range of values
【问题讨论】:
标签: python django django-admin
警告!我的回答中提到的 django API 的某些部分被认为是内部的,可能会在 django 的未来版本中更改,恕不另行通知。
记住这一点,创建自己的过滤器实际上非常容易。您需要做的就是:
SimpleListFilter 并在其中创建一些方法,该方法将生成默认范围值和选定范围值(用于使用过滤器渲染模板)SimpleListFilter 子类中设置template 属性,指向您的过滤器模板。Django 将向您的模板传递 3 个参数:
title - 您的过滤器标题(取自您班级中的 title 属性)choices - 由您的类的choices 方法生成的字典列表(默认情况下,它修改由lookups 方法返回的元组列表)spec - 你的类实例。从那时起,您可以在模板中使用spec 访问类的任何属性或方法,因此应该可以创建任何过滤器。
【讨论】: