擅长:python、mysql、java
<p>有一个简单的方法:</p>
<pre><code>class RefererFilter(admin.SimpleListFilter):
title = 'has referer'
# Parameter for the filter that will be used in the URL query.
parameter_name = 'referer__isnull'
def lookups(self, request, model_admin):
return (
('False', 'has referer'),
('True', 'has no referer'),
)
def queryset(self, request, queryset):
if self.value() == 'False':
return queryset.filter(referer__isnull=False)
if self.value() == 'True':
return queryset.filter(referer__isnull=True)
</code></pre>
<p>然后在ModelAdmin中使用它们:</p>
<pre><code>class PersonAdmin(admin.ModelAdmin):
list_filter = (RefererFilter,)
</code></pre>