У меня есть сайт Django, использующий администратора для управления моделями. В настоящее время я использую
from django.db.models.base import ModelBase
for name, var in databuild_models.__dict__.items():
if type(var) is ModelBase:
admin.site.register(var)
Чтобы зарегистрировать все модели в модуле с модулем администратора. Однако я хочу автоматически добавлять list_filters для каждого атрибута каждой модели. Я прочитал https://docs.djangoproject.com/en/1.8/ref/contrib/admin/, где они используют форму:
class MymodelAdmin(admin.ModelAdmin):
list_filter = ['model_name_attribute']
а потом
admin.site.register(models.MyModel, MyModelAdmin)
Есть ли способ аналогичным образом перебрать каждый атрибут в модели и добавить его в список фильтров?
Например:
filter_list_fields = []
for attr in MyModel:
filter_list_fields.append(str(attr))
list_filter = filter_list_fields
а затем зарегистрировать их как общий класс?