国名的本地化

时间:2012-12-12 20:20:50

标签: sql gettext

作为地址的一部分,我存储在我的SQL数据库国家/地区代码中(例如US,DE,...)。然后我在我的数据库中有另一个表(有两列),它将国家代码翻译成各国的英文名称。

如果我想使网站成为多语言,我可以扩展此转换表,使用除英语之外的其他语言添加国家/地区名称。

我想知道是否有另一种方法不涉及修改数据库,例如使用gettext翻译英文国家名称?

1 个答案:

答案 0 :(得分:0)

处理此问题的典型方法是将表结构更改为三列,而不是两列:

  • 语言
  • CounryCode
  • 全名

每当您查询数据库时,都会提供当前语言。

然后,您必须更改代码以在任何查询中包含其他语言密钥。

根据您要跟踪当前语言的方式,您还可以使用视图或用户定义的函数。

你不想使用自动翻译,因为像“中国”这样的国家的名字可能变成“瓷器”的等价物。