网站内容本地化与应用测试实践
1. 内容本地化策略探索
在完成网站本身的翻译后,接下来需要处理产品的标题和描述等内容的翻译。针对此问题,有以下几种可行的处理方式:
| 方式 | 描述 | 优缺点 |
| — | — | — |
| 为每种语言创建单独的产品表 | 为每种语言准备一个独立的产品表 | 看似简单,但会导致大量数据重复,且可能出现数据不同步的问题 |
| 在产品表中创建重复行 | 在产品表中为不同语言的产品添加重复行 | 与单独创建表类似,存在数据重复和同步问题 |
| 在表中添加单独的列 | 为不同语言的标题和描述分别创建列,如英文、西班牙语等 | 解决了数据不同步问题,但随着新语言的添加,表的宽度会不断增加 |
| 采用第四范式 | 将公共数据提取到单独的表(如 summaries 表),单个摘要包含标题、描述、语言环境和 ID,产品与摘要建立关联 | 分离了关注点,便于根据新需求进行扩展 |
然而,当与客户沟通后发现,所售产品为书籍,不同语言版本的书籍在页数、ISBN 号甚至价格上都可能不同。因此,最终解决方案是在现有产品表中添加一个语言环境列,并修改 find_products_for_sale 方法,使其仅返回与客户语言环境匹配的产品:
find(:all, :order => "title", :conditions => {:locale => I18n.locale})
在这个迭代结束时,完成了以下工作:
- 设置应用程序的默认语言环境。
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



