我正在对一个Django应用进行本地化。
前端网站运作良好,Django管理界面也能够选择语言。
但是在某些地方它只应用了语言设置,并使用默认的英文字段和列名版本,尽管这些已经被翻译。为什么? 我该如何使其在管理界面中使用已翻译的列和字段名称?
示例:
class Order(models.Model):
OPTIONS = ( (0, _("Bank transfer") ), (1, _("Cash on delivery") ), )
user = models.ForeignKey(User, name=_("User") )
payment = models.IntegerField(choices=self.OPTIONS, name=_("Payment"))
我的问题是:
- 如何翻译顶部的"欢迎"和"注销"等标准管理文本
- 如何翻译付款类型的SELECT选项
- 为什么字段(“用户”、“支付”)的列名称和表单标签没有被翻译
我使用的是Django 1.0.2版本。那些没有被翻译的文本已经在区域设置文件中出现,并且与正常工作的文本一起。
附属问题:是否可以本地化应用程序名称?
self.OPTIONS
中的self
名称从哪里来?这不会引发 NameError 吗? - Chris Wesselingself
不像JavaScript或PHP中的this
一样是魔法关键字;它必须显式地绑定。但我可能是错的。 - Chris Wesseling