NestJS / TypeOrm 本地化

Han*_*azi 3 localization internationalization typescript typeorm nestjs

我正在使用 NestJS 服务器和 TypeORM 开发一个应用程序。我需要本地化一些领域,经过研究我发现这个包typeorm-i18n。文档说如果你使用 NestJS,你应该使用这个包:vlzh/nest-typeorm-i18n。但是没有关于如何使用它的例子。而且我还查看了 test 文件夹,但没有运气。

有谁知道如何使用这个包?或者也许想出更好的解决方案?

Arn*_*ver 6

查看typeorm-i18n的固定装置,该解决方案基于为每种支持的语言的每个可翻译字段都有一个单独的列。虽然这可能会产生最简单的数据库模式设计,但我只会在您只有很少(1-2) 个可翻译字段,并且只有少数 (2-3) 种语言需要支持时才使用它,并且不要预见这会改变在将来。

在大多数其他情况下,我会考虑拥有一个真正的多语言数据库模式。有一些很好的 StackOverflow 答案可以解释可能的解决方案,例如多语言数据库的架构(另请参阅第二个答案中的解决方案 #5 )。碰巧这个答案链接到(在撰写本文时仍然打开)TypeORM github issue I18n messages。

在这个问题中,@michael-bromley 提出了一个基于此的不错的TypeORM 解决方案(请务必阅读后续内容,因为他现在使用的是修改版)。解决方案在他自己的开源电子商务产品Vendure 中发展和实施(请参阅可翻译的产品实体)。

在问题的最后,还提出了语言和产品之间的 N 对 M 关系。

对我来说,迈克尔布罗姆利的方法似乎是一个很好的方法。但是您可能必须从他的 Vendure 项目中提取最新版本。