Django管理员列表过滤器

7
我希望在管理员筛选器中添加自定义模型方法,但是它失败了。
例如,Foo:
class Foo(models.Model):
     number = models.IntegerField()
     def big_enough(self):
        return self.number > 99

现在在管理面板:

class FooAdmin(admin.ModelAdmin):
     list_filter = ('number', 'big_enough')

出错了,我收到了以下错误信息:

在/admin/test/foo/页面上,'FooAdmin.list_filter[0]'指向的是模型'Foo'中缺失的字段'big_enough'。

2个回答

8

2
您不能使用模型方法来实现此目的。list_filter用于过滤Django查询集,无法有效利用裸函数。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接