当对模型字段使用本地化的“选项”列表时,管理员不会在列表视图中显示翻译后的值。
简短的例子:
from django.utils.translation import ugettext_lazy as _
class OrderStates:
STATES = (
(STATE_NEW, _("New")),
(STATE_CANCELLED, _("Cancelled")), )
class Order(models.Model):
state = models.IntegerField(choices=OrderStates.STATES)
# ..
class OrderAdmin(admin.ModelAdmin):
list_display = [ 'id', 'state', 'address', 'user']
# ..
admin.site.register(Order, OrderAdmin)
编辑订单时,“新”和“已取消”的本地化版本会正确显示在前端和管理表单中。但是
在管理列表视图中,我得到空白字段
-不管我使用哪种语言,包括英语。列名可以。
这只在Python2.3中发生
(谈论利基问题)。使用python 2.5可以正确显示所有选项。我都没有任何错误或警告。
尝试使用ugettext而不是ugettext懒惰地选择那些不起作用的选项。ugettext ou noop类作品-它至少显示了原始的英文版本,而不是空白字段。
是我做错了什么,还是这是个虫子?