1

我正在为 django amdin 中的简单列表过滤器阅读此内容

https://docs.djangoproject.com/en/1.5/ref/contrib/admin/#django.contrib.admin.ModelAdmin.list_filter

他定义了两个函数lookupsqueryset

我想知道差异是什么,何时使用查找以及何时使用查询集。dores 查找是什么意思

4

1 回答 1

0

lookups返回列表中将出现在右侧的项目(在示例中,列表将包含值 'in the 80's' 和 'in the 90's')。

queryset定义选择特定查找时应在左侧显示哪些对象。

每个查找项由两个值组成;实际显示在屏幕上的值和另一个值,queryset 方法将使用它来过滤主对象列表。

如果用户选择 'in the 80's',则 queryset 方法将采用值 '80s'(来自self.value())并创建一个过滤器,返回生日在 80 年代的人。(这是 queryset 方法中的第一if条语句)。然后,管理页面中的主要对象列表由来自此过滤器的对象填充。

于 2013-02-18T07:10:12.540 回答