Допустим, у меня есть какая-то модель Django, в которой список чисел представлен в виде поля. Я вычисляю некоторую статистику по полю, используя пользовательский метод в модели. Эти модели отображаются на панели администратора в виде InlineAdminModel, «встроенного» в родительский объект. Есть ли способ отобразить значение этого пользовательского метода на панели администратора при изменении родительской модели , это, очевидно, будет применяться только к тем, которые уже были созданы.
например. (Усечены)
class ListModel(models.Model):
number_list = models.CommaSeparatedIntegerField(max_length = 20)
def sum(self):
return sum([int(s) for s in number_list.split(',')])
class ListModelAdmin(admin.TabularInline):
model = ListModel
list_display = ('sum') #works fine for displaying the ListModel
fields = ['number_list', 'sum'] #Obviously Doesn't work, but demonstrates
#what I want to accomplish. sum wouldn't be settable but displayed when
#number_list is updated