在Django admin中显示属性 - 翻译他们的名字

时间:2010-07-23 07:10:48

标签: django django-models django-admin

在我的Django应用程序中,我的模型将一些值设置为属性 - 它们是根据需要从其他值计算的(例如,某些其他对象的字段的最小值等)。这很好用,因为我不需要将它们存储在数据库中,并且计算成本很高,因此它们被缓存。

所以我有一个模特:

class A(models.Model):
    name = models.TextField(_('Name'))

    def max_of_some_values(self):
        # calculate it here, with caching,etc
        return 1
    max_value = property(max_of_some_values)

当我在管理应用程序中显示此内容时,在对象列表中name列正在使用它的翻译显示。所以在波兰语中它是Nazwa,英语是Name等等。

与此同时,我发现无法为我的财产添加翻译的“列”名称。

之前有人处理过吗?

1 个答案:

答案 0 :(得分:3)

您可以在方法上设置short_description属性以确定列名称 - 我相信应该可以将其标记为可翻译。

def max_of_some_values(self):
    # calculate it here, with caching,etc
    return 1
max_of_some_values.short_description = _('Max value')