在我的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
等等。
与此同时,我发现无法为我的财产添加翻译的“列”名称。
之前有人处理过吗?
答案 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')