首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Django项目中使用哪种动态国际化系统?

在Django项目中使用哪种动态国际化系统?
EN

Stack Overflow用户
提问于 2010-08-20 14:27:32
回答 4查看 1.8K关注 0票数 8

我正在与Django一起从头开始开发一个新项目。我看到有许多处理动态内容翻译的应用程序。

  • Django-多语种
  • Django-可插式-i18n型
  • Django-模型翻译
  • Transdb
  • Django-多语种模型-
  • Django-transmeta

举几个例子。

Transdb,transmeta和多种语言听起来公平,但我想读一些个人经历。

我该选哪一个?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2010-08-20 15:36:47

我同意S.Lott的观点,即您需要考虑国际化所需的内容。然而,这是对所有提到的软件包的一个非常好的简化:

http://blog.muhuk.com/2010/01/06/dynamic-translation-apps-for-django.htm

到目前为止,我个人的选择是“上述任何一项”。我目前正在使用datatrans进行原型开发:

http://github.com/citylive/django-datatrans

http://www.botondus.com/dynamic-translation-with-django-datatrans/

但我可能还会选择另一种解决方案。

票数 5
EN

Stack Overflow用户

发布于 2011-06-21 15:51:40

模型翻译有两种:

  1. 向模型中添加额外的列/字段以进行转换
  2. 使用第二个表进行翻译

第一种方法更有效,因为您不使用额外的联接。第二种方法的侵扰性较低,因为它没有修改原始的模型表。我个人更喜欢第一个选项,这是我使用django-模型翻译的主要原因之一。

您还可以查看这个比较网格

票数 3
EN

Stack Overflow用户

发布于 2011-09-26 15:33:08

姜戈-纳尼是一个全新的应用程序,它使用最好的设计方法,速度快,写得很好.

它还在开发中,但运行良好,并且有一个非常完整的文档

这是一个查看如何定义多语言模型的片段:

代码语言:javascript
复制
from django.db import models
from nani.models import TranslatableModel, TranslatedFields


class DjangoApplication(TranslatableModel):
    name = models.CharField(max_length=255, unique=True)
    author = models.CharField(max_length=255)

    translations = TranslatedFields(
        description = models.TextField(),
        description_author = models.CharField(max_length=255),
    )

    def __unicode__(self):
        return self.name
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3531813

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档