Вы пытались сделать это свойство?
class FooAdmin(admin.ModelAdmin):
@property
def list_display(self):
if some_cond:
return ('field','tuple')
return ('other','field','tuple')
У меня нет, но оно может сработать.
Я также вполне уверен, что вы могли бы написать его по буквам:
class FooAdmin(admin.ModelAdmin):
if CONDITION:
list_display = ('field','tuple')
else:
list_display = ('other','field','tuple')
Но этот будет запускать проверку только во время интерпретации класса FooAdmin: но если вы основывали тест на настройках. Например, SOME_VALUE, он может работать.
Примечание такжечто self
в первом примере является экземпляром класса FooAdmin, а не самим Foo.