在电子商务网站上实现多国语言

jinyanhui2008 2010-08-09
liangzhian0620 写道
谢谢楼上这位的建议,我们现在数据库还没有确定是用不同的数据库还是同一个数据库,我们是考虑过用数据库这个问题,但如果是用不同的数据库的话,如果想添加一种语言的时候是不是就要改我们的程序呢?并且这样对管理员要求就比较的高需要会多国语言,对于发布一些信息审核批的时候领导也不一定能看懂,这也是一个问题吧

如果想要国际化必然会存在这种问题,如果用多数据库管理的话,那就是各个语种的人员自己去管理自己的系统,只不过接入的平台语言不一样而已。
而且平行扩展数据库,不需要修改任何系统程序,只需要平行扩展一个数据库即可。
当然相关的配置还是要修改的,这个可以在设计阶段考虑到的,不会成为什么难题。
dandan_5956 2011-07-21
jinyanhui2008 写道
liangzhian0620 写道
谢谢楼上这位的建议,我们现在数据库还没有确定是用不同的数据库还是同一个数据库,我们是考虑过用数据库这个问题,但如果是用不同的数据库的话,如果想添加一种语言的时候是不是就要改我们的程序呢?并且这样对管理员要求就比较的高需要会多国语言,对于发布一些信息审核批的时候领导也不一定能看懂,这也是一个问题吧

如果想要国际化必然会存在这种问题,如果用多数据库管理的话,那就是各个语种的人员自己去管理自己的系统,只不过接入的平台语言不一样而已。
而且平行扩展数据库,不需要修改任何系统程序,只需要平行扩展一个数据库即可。
当然相关的配置还是要修改的,这个可以在设计阶段考虑到的,不会成为什么难题。

看到以前的这个讨论,在看现在数据库关于国际化的设计,就是失败的案例,只要用到国际化的地方都是这样设计的,比如商品名称的国际化,就用一张产品表,一张产品语言表,前者和后者一对多,还有一张语言表
产品表
产品ID产品属性
1xx
2yy

语言表
语言ID语言
1中文
2英文

产品语言表
产品语言ID语言ID产品ID产品名称
111苹果
221Apple
112香蕉
222Banana


扩展性极差,如果在代码中需要知道产品中文名称,需要通过写死的语言ID来查询
getProductName(产品ID,语言ID),如果新增一种语言,用到地方,代码都需要修改,如果用多数据库管理要好很多,代码的重用度高很多
Global site tag (gtag.js) - Google Analytics