Django模型i18n的内容

时间:2011-01-07 15:19:44

标签: python django django-models localization internationalization

在我的设计中,有些模型需要以不同的语言存储某些字段。以前做过吗?我看到一些Django模块有助于进行模型翻译,但有些模块无法正常工作。

那里有最佳实践吗?以下是我的代码。

我的模特,

class Lookup_I18n(models.Model):
    i18n_code = models.CharField(max_length=5, default=settings.LANGUAGE_CODE)
    value = models.CharField(max_length=300)

class Lookup(models.Model):

    purpose = models.CharField(max_length=10)
    key = models.CharField(max_length=10)
    value_i18n = models.ForeignKey(Lookup_I18n)
    value = models.Field()

    class Meta:
        unique_together = (('purpose', 'key'),)

1 个答案:

答案 0 :(得分:5)

我最近使用django_modeltranslation。它将在每个表中创建额外的字段,以便以某种语言翻译字段。您可以通过Django管理面板提供翻译。以下是Django的some applications翻译模型。我不得不在模型中翻译一个字段并且它有效。选择最适合您设计的应用程序。