Trantor国际化(多语言配置)
1. 概述
1.1 简介
国际化功能最终的结果,指的是工作台透出的文本信息支持“多语言”切换,能够适配终端用户的多语言需求。
完整功能主要包括两个部分:
- 高效率的资源翻译配置;
- 工作台的多语言切换;
本文档主要阐述以上两点规则与配置方法
1.2 名词解释
| 名词 | 释义 | 举例 |
|---|---|---|
| 国际化资源点 | 所有需要国际化的文本都称为国际化资源点,包括: 有归属的资源点 * 模型定义中的文本; 无归属的资源点 * View DSL 中显式定义的文本; * 模型静态校验提示文本; * 业务异常文本 | * 按钮label * 字段名 * ”请输入密码“等前端静态提示文案 * “网络异常”“订单生成失败”等业务异常文本 |
| 语言包 | 国际化资源点的单语种译文资源包 | U.S English、简体中文、繁体中文(香港) |
| 译文 | 对应语言包下,国际化资源点的翻译文本,最多100字不限制格式 | 英文包中的姓名,译文对应为“Name” |
1.3 服务场景
-
终端用户:将系统切换成自己所需的语言版本
-
开发者/实施方配置:
- 为系统新增一种语言;
- 新业务的多语言翻译配置;
- 新/老业务的翻译校对配置;
-
协助翻译人员(PD、运营、译员等):国际化资源点的译文表格批量导入
1.4 相关资料
0.14国际化PRD:https://yuque.antfin.com/trantor/design/qdagy1#DLezB
i18n方案:https://yuque.antfin.com/trantor/design/fev2c3
2. 多语言配置(交付控制台)
一个新的语言包上线,需经历以下流程:
- 语言包维护:新建一个”初始化“的语言包;
- 国际化资源点译文维护:定义上述”初始化“语言包中的译文资源
- 研发态环境发布:发布线上
- (非必要)运行态环境配置:设定默认语言
2.1 研发中心(多语言维护)
通过应用去区分了多语言的内容,即需要先选择进入对应的应用后,才会看见对应的语言包的内容。
2.1.1 语言包维护
2.1.1.1 选择应用

2.1.1.2 应用下的语言包资源
只有启用了语言包才会在后续操作中或者项目运行中生效!!!
特别提醒:新增语言包只能进入最顶层的应用(左上角图标下的应用),才会看见新增语言包的按钮操作。

如上图,主要包含的配置有:
-
新增语言:维护语言包名称与描述,创建出一个“初始化”的新语言包;(初始化语言包未包含任何译文资源)
-
编辑语言包:二次维护语言包名称与描述;
-
语言包状态:
- 停/启用:停启用决定了在运行态的统一工作台是否能切换到对应的语言
- 删除:逻辑删除;
-
机翻:机翻是调用第三方接口将指定资源进行翻译,会覆盖已经维护好的译文。机翻弹窗如下图:

- 机翻的目标语言取自语言包语言,不能修改;
- 指定一个源语言,以及对应的翻译范围(必选)。提交后将对应范围的资源进行“第三方”接口自动翻译;
- 处理过程非“异步”;
- 若选取了模型范围,源语言需对应上模型语言,否则校验失败;
-
导入:批量配置/替换语言包中的国际化资源点译文
(重要)目前导入的应用场景是要搭配”导出“使用,先导出文件线下翻译后,重新导回线上完成配置/替换译文
导出的模板如下图:

说明:
-
系统会导出当前语言包的全量”国际化资源点“信息,操作者需配置:
- 文本sheet的”原文本“和”翻译“
- 模型&字典&应用菜单&权限&消息sheet的”翻译“
-
导入过程中,只导入识别成功的资源译文。
识别异常的如“校验失败、资源识别异常、查无此资源”的情况,不中断导入;
-
导入过程中,若原资源译文有值,执行的是译文覆盖操作;
-
导入过程是异步的;
-
导入的弹窗如下图,文件必传,且会校验格式(xlsx)与大小(≤100MB)

-
-
导出:将当前语言包的译文资源导出至本地excel,导出过程是异步的,通过链接下载”解析完毕“后的文件。文件内容同导入模板,仅包含当前语言包的译文资源”原文本——翻译“

-
语言包排序:”启用“状态的语言包在列表中的排序,决定了工作台切换语言时的排序,如下图

-
”翻译“:译文维护页面入口
2.1.2 语言包的译文维护
译文维护的工作主要是给国际化资源点配置对应的译文,国际化资源点包含了多种类型,故而区分出以下维护过程;
2.1.2.1 文本
定位是”未结构化的文本资源“译文维护,即无归属的国际化资源点,如:
-
页面上的label;
-
仪表盘的卡片描述;
-
各种未结构化的标题、文本…
可以理解为,除了有归属的”模型、字典、菜单、权限、消息“外的所有文本,都用此法配置译文。
后续版本会优化“识别出所有文本资源”,方便配置译文;
维护页面如下图:

维护“原文本——翻译”的映射关系,维护方式有
- 新增:键入原文本&翻译信息提交即可,两个字段都100字以内不限制格式,且原文本不能重复;
- 语言包列表的“导入”:通过excel模板导入;
2.1.2.2 模型
模型字段译文维护页面如下图

可维护的有:
- 模型名称:如上图红圈处,直接维护对应译文,可清除已维护的内容;
- 模型字段:如上图红圈处,直接维护对应译文,可清除已维护的内容;
- 字段元信息:此处的元信息指的是模型字段包含的内容,例如价格字段的单位。此处就只维护单位、布尔与校验提示三种译文;

实现逻辑:
- 维护好译文后,由后端根据请求返回对应语言包id的译文;
- 若译文未维护(空值),工作台切换到当前语言时,显示的是对应的资源名(模型名称、字段名称…);
- 若模型有字段更新(增、删、改)且未发布,此页面展示的是“实时”的资源内容。
2.1.2.3 字典
字典类型译文维护如下

同模型字段译文维护过程一致,若字典有更新,暂时实时资源信息;
2.1.2.4 应用菜单
菜单译文维护页面如下

-
维护交互一致;
-
取值自模块list,以及各个模块下维护的菜单树。
此处列表不是按树层级显示,是将根菜单下所有子节点“按标识”排序
-
若菜单有更新,实时取值;
2.1.2.5 权限配置
权限配置中心的译文配置页面如下图

逻辑:
-
此处显示的是功能权限+行数据权限;
-
维护交互一致,维护的是权限点(name)对应的译文;
列数据权限是工作台上配置的,译文取“模型”的译文;
2.1.2.6 消息
系统发出的校验/提示型消息的译文维护如下:

逻辑:
- 模板型消息:如上图,配置有”占位符“的模板消息,其中占位符是原文透出,其余部分正常翻译;
- 其他固定文案的消息,维护交互一致;
- 若当前制品于“消息”内容有更新,此处实时显示最新内容;
2.2 国际化发布
特别提醒:一定要在研发中心启用对应的语言包才会发布对应的语言包资源!
在 发布管理 的 资源发布 中创建新的 资源发布计划,选择 国际化 资源类型发布,如下图:

说明:
- 资源类型:需选择国际化;
- 待发布多语言:选择需要发布的语言包(可多选);
- 多语言的发布后,可即时在相应的运行环境生效。
2.3 运行环境
1、国际化资源发布后就可以在运行态查看!
2、且同研发态一样,需要先选择应用才能查看到对应的语言包资源!
运行环境下所有内容都是readonly不能编辑,仅有一个功能:设置默认语言,设置后直接生效,如下图

3. 切换语言(工作台)
工作台语言切换如下图

逻辑:
- 登录后以默认语言显示;
- 语言列表排序取值自控制台的“语言包列表“;