gpt4 book ai didi

database-design - 动态数据本地化

转载 作者:行者123 更新时间:2023-12-03 17:20:32 26 4
gpt4 key购买 nike

我正在寻找有关本地化存储在数据库中的数据的最佳实践的建议。我正在开发一个 Web 应用程序,其中所有静态文本都使用文件本地化。我们有几个选项,管理员可以使用存储在数据库中的 UI 进行配置,并且需要本地化这些值。

我们提出了几个可能的想法。您对这些解决方案有何看法?是否有更好的选择,甚至是标准的最佳实践?

每领域专业本地化

这是为 best practices for multilanguage database design 提出的解决方案.我们将为每个本地化字段创建一个单独的表。例如,假设我们有表 colorscolor_id , color_namecolor_description列,我们可能会将其分解为 color包含非本地化数据和 color_translations 的表表color_id , locale , color_namecolor_description领域。

但是,我们的客户经常将本地化文件发送给第三方进行翻译,这变得很棘手。

单表本地化

另一种选择是创建一个表来表示所有数据库本地化:

CREATE TABLE localized_text
(
key VARCHAR(256) NOT NULL,
locale CHAR(5) NOT NULL,
value VARCHAR(256),
PRIMARY KEY (key, locale)
);

这将更容易导出以进行异地本地化,但会增加一定程度的间接性。

最佳答案

We would create a separate table for each localized field. For example, suppose we had the table colors with color_id, color_name and color_description columns....



假设您的 colors table 只是静态文本,显而易见的选择是向其中添加一列,可能名为 locale并为您关心的每个语言环境添加行。然后加入客户的语言环境以生成您想要的单一描述。

为此,您必须将静态描述与独立于语言环境的数据分开,因为本地化描述引入了多对一的关系。作为权宜之计,您可以将英文描述留在主表中,并在对它们的所有引用都消失后删除它们。

关于database-design - 动态数据本地化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3136224/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com