Глядя на реализацию в django.contrib.admin.filterspecs.py, мне кажется, что FilterSpecs управляются в глобальном реестре, они связаны с типом поля.
Мне любопытно, можно ли:
- различные пользовательские фильтры для разных экземпляров AdminSite?
- разные пользовательские фильтры для поля, принадлежащего разным моделям?
- различные пользовательские фильтры для комбинации двух?
Например:
У меня есть класс Article (models.Model), с которым связаны теги (некоторые модели Tag). Теги созданы пользователями, посещающими сайт.
- На странице администрирования статей я хочу, чтобы выбор осуществлялся на основе тегов.
- У меня есть AdminSite для суперпользователей, на котором видны все теги.
- У меня есть другой AdminSite для штатных пользователей, на котором я хочу, чтобы были видны только те теги, которые были созданы текущим пользователем.
Приведенный выше пример является надуманным, но я надеюсь, что он дает идею.