【问题标题】:Is it fine to store i18n data in the database?在数据库中存储 i18n 数据可以吗?
【发布时间】:2019-08-25 16:05:03
【问题描述】:

我正在构建一个多语言 Web 应用程序,但我正在努力决定如何存储 i18n 数据。

一方面,我可以采用将短语保存到 JSON 文件并从那里加载的传统方式。但是对于我的应用程序,我使用 create-react-appfirebase,这使得这很不方便(加载短语很好,但我也想要我的 i18n 库将丢失的翻译保存到文件中,这并不容易,因为我必须设置一个小型 express 服务器来处理文件修改)。

另一方面,我可以将所有内容都存储在数据库中。这将使这个过程更简单,但这样做可以吗?是否有任何陷阱或安全问题? (我知道可能没有人关心窃取翻译的文本,但如果它以某种方式改变,那对用户来说就不好了)

【问题讨论】:

  • 如果有人可以访问您的数据,那么您的翻译就是您的后顾之忧

标签: database firebase internationalization


【解决方案1】:

我更喜欢使用 JSON 格式。在您无法上传“.json”文件的情况下,您可以使用“.js”文件而不会带来不便。例如:

zh.js

module.exports = {
    "sayHi": "hello",
};

es.js

module.exports = {
    "sayHi": "hola",
};

如果您不想错过任何语言的任何翻译文本,您可以创建一个小脚本,它会在缺少文本时提醒您。另一方面,您可以创建另一个脚本来填充不完整的语言并生成新的 .js 文件。

【讨论】:

    猜你喜欢
    • 2011-08-14
    • 2013-03-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-11-23
    • 1970-01-01
    • 2015-05-04
    • 1970-01-01
    相关资源
    最近更新 更多