2012-07-12 27 views
3

这是完全不同的问题。我们有一个使用欧洲语言的django网络应用程序。现在我们需要英文版的相同应用程序。Django反向内化/本地化

我想如果我只按照django内部化/本地化步骤以相反的顺序进行操作,我将能够使用英语制作应用程序(原始代码由其他人编写)。但我认为这不是一个最佳的方式来做到这一点。有没有更好的方法或途径?

PS。当地时区现在将是印度。我们计划在未来几天添加其他国家。

回答

2

有两个部分可以达到您所期望的解决方案,您已经指出:国际化&本地化。

国际

准备本地化的软件。通常由开发人员完成。

本地化

编写翻译和本地格式。通常由翻译人员完成。

重要的是要注意,如果代码没有适当的本地化结构,那么翻译就不够了。

查看docs了解更多信息。

+1

此外,gettext风格国际化的目的是使用类似英语的语言作为ngettext等的源语言。最好的选择是从源代码翻译成英文,然后国际化。 – 2012-07-12 06:41:13

0

时区实现相当简单。只需使用pytz和/或dateutil。你的问题很广泛,你能举一个你正面临的特定语言问题的例子吗?

+0

不幸的是依赖于实现,由于数据库没有存储时间划分的邮票和python日期时间被完全篡改,并且不能真正支持时区,所以时区的实现远非易事。阅读pytz文档时,这变得非常明显。特别是在服务器/数据库本地时区以外的任何其他地方,你肯定会遇到问题。 – 2012-07-12 06:32:23

+0

转换为UTC将是首要步骤之一,是的,这可能很困难。 – snakesNbronies 2012-07-12 06:36:38

+0

问题是,如果时区使用DST,则时间戳在本地时区中可能不明确。什么python确实是错误的,实际上是在datetime中分解时间。 Java说得对; java.util.Date中的时间存储总是以UTC秒为单位,并且仅针对java.util.Calendar实例输出的本地时区分解。 – 2012-07-12 06:46:37