gpt4 book ai didi

html - 如何从存储在数据库中的翻译中本地化静态网站文本?

转载 作者:行者123 更新时间:2023-11-28 03:40:48 33 4
gpt4 key购买 nike

我需要为我的(可扩展的)Web 应用程序中的静态文本设计一种翻译机制/策略 - 这些应用程序基于 ASP.NET 环境中的 HTML、JQuery/JavaScript(但没有服务器端控件)并加载了动态数据从异步 jQuery 调用到 http 处理程序。

我已经使用 Globalize 成功地本地化了数字、日期等,不过现在需要整理一下文字翻译。

翻译后的文本适本地存储在数据库中(由本地合作伙伴在另一个应用程序中维护),因此,我不想使用基于 ResX 的文件等价于 jQuery Localisation/jQuery Localize/jQuery-i18n-properties方法,相反,我正在寻找类似于 extending the Resource-Provider Model 的解决方案本地化 ASP.NET 控件(我没有),以从数据库中获取翻译。

客户端方法:我刚刚偶然发现 i18next's dynamic (non-static) resouce route我正在尝试解决是否可以从 http 处理程序返回类似的东西(并缓存在 JStorage/LawnChair 中)以使用 the jQuery function 填充占位符/标签或对 Moustache 采取类似的方法或 hogan.js模板。

服务器端方法:在提供之前修改 HTML,例如 this answer建议使用 HttpResponse.Filter修改响应服务器端(参见 this article )。由于缓冲区被分块,我必须按照建议捕获整个流 here ,这确实会导致性能下降,但是,我希望我可以通过 caching each (language) version 来缓解这种情况页面的。

或使用 HTTP 处理程序 like this看起来更简单的方法,但我不太确定如何在这种情况下缓存页面的多个版本。

其他人是否有使用这些方法的经验或知道满足要求的任何类似或“最佳实践”,尤其是在性能、可扩展性和可维护性方面?

如果有任何不清楚的地方,请告诉我,我是 Web 开发的新手。 :)

注意:这是针对在平板电脑/手持设备上运行的用于数据捕获的 Web 应用程序,它不是 CMS 或静态站点(以前的版本用于在 .Net Compact Framework 上运行大约 5 年,并且是时候进行更新了,这样用户就可以使用非 Windows 设备,例如 Android 和 iPad。

最佳答案

这就是我们在数据库中处理文本翻译的方式(这听起来很明显,但至少这是高度可扩展的):

  1. 假设您有一个表 tbl_Content,其中只有一种语言的 [id]、[title] 和 [description] 列。

  2. 我们所做的是首先创建一个包含以下列的 tbl_Content_Translation:[id]、[languageId]、[title] 和 [description]

  3. 将您在标题/描述列中的任何内容复制到翻译表,以确保您没有丢失任何内容

  4. 删除原表中的title和description列

  5. 更改查询此表的所有 SP 以添加 [languageId] 参数。

  6. 我们将 SP 附加到我们的 BLL。

  7. 最后,我们从网页或网络方法调用 BLL 来访问我们的数据。

同样,这看起来很明显,但因为它对我们有用(ajax 调用和普通的英语、法语和越南语网页),我认为这可能很有用。

关于html - 如何从存储在数据库中的翻译中本地化静态网站文本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11107773/

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