微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

数据库设计 – 在查找表中处理I18N的最佳方法是什么?

在具有查找表的多语言应用程序中,处理翻译的最佳方法是什么?

例如,对于国家/地区查找表,美国用户应该看到英国国家/地区名称,因为德语应该看到德语名称.但他们的身份证仍应相同.

我能想到以下几点:

>为每种语言添加不同的查找表
>对于根据其语言标记的同一国家/地区,使用包含多个条目的单个查找表.
>删除所有查找表,并按程序代码执行所有查找
> [我没想到的任何其他想法?]

解决方法

这里最大的问题是 – 最终用户可以改变翻译吗?

如果答案是“否”,则资源包比表更容易,更快速地使用.而不是实际文本,您的表将包含资源键(或者您可以使用主键,如果它是文本而不是数字),并且适当的资源包将包含翻译.

如果答案为“是”,则必须将翻译存储在数据库中.但是,我发现在这种情况下最简单的方法是模仿数据库中的上述资源包功能 – 例如有一个表“locale”,“resource key”,“resource value”列,所有其他表将用于查找实际的本地化文本.

原文地址:https://www.jb51.cc/mssql/79027.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐