在DB中存储多个翻译记录的最佳策略

时间:2014-10-11 11:44:42

标签: ruby database sequel padrino

假设很少有字段(例如6/7以下)为DB记录存储多语言翻译的最佳策略,请考虑以下两种情况。

假设我们有一个包含以下字段的表:

id, title, description

每条记录都有英文和阿拉伯文翻译。所以,考虑我正在使用的两个案例:

案例1:

再添加两个字段:title_ardescription_ar

案例2:

添加字段language并从idlanguage中创建一个复合键。

考虑到处理复合键的复杂性(我正在使用Sequel ORM),我正在重新思考是否采用第一种方法可能会更好。请解释这两种方法是否存在任何重大缺陷或优点。

1 个答案:

答案 0 :(得分:1)

Translator DB Model

即使计划适应多种语言翻译,这种方法也会扩展。

协会

句子有很多语言翻译
翻译属于句子


第一种方法的缺点,

如果我们要将应用程序扩展到多种语言,那么我们必须将相应的字段添加到表

第二种方法的优点,

由于我们有特定于句子的id引用,我们可以更快地获取所需语言的相应描述。