Администратор Django перечисляет фильтр

Я хочу добавить пользовательский образцовый метод к администраторскому фильтру, однако он перестал работать.

Нечто в качестве примера:

class Foo(models.Model):
     number = models.IntegerField()
     def big_enough(self):
        return self.number > 99

теперь в панели администрации:

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

Сбои, я получаю ошибку

ImproperlyConfigured в/admin/test/foo/'FooAdmin.list_filter[0]' обращается к полю 'big_enough', который отсутствует в модели 'Foo'.

7
задан Hellnar 4 March 2010 в 13:40
поделиться

2 ответа

См. Эту ветку SO . Это не так просто, как должно быть.

8
ответ дан 7 December 2019 в 01:19
поделиться

Вы не можете использовать модельный метод для этой цели. list_filter используется для фильтрации набора запросов django, который не может значимо использовать простые функции.

2
ответ дан 7 December 2019 в 01:19
поделиться
Другие вопросы по тегам:

Похожие вопросы: