在管理员界面显示自定义方法字段
假设我有一个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