国际化
代码地址:trantor-example-i18n
与 Trantor 资源文件一样,国际化也以json文件的形式存在于产品模块内。
可配置资源包括:文本、模型、模型字段、枚举、字典。
静态文本资源
在trantor 0.15之前,通过文件配置,文件名以 locale 代码开头,_text.json 结尾,如 en-US_text.json 。
{ "学生列表": "Student List", "操作": "operation", "详细": "Detail", "编辑": "Edit", "删除": "Delete", "确定要删除?": "delete?", "新建": "Create"}在0.15之后,可以交付控制台通过配置多语言->文本 ,然后通过发布管理发布到各个运行环境中。
模型及模型字段
可配置的资源分为模型、枚举、字典三种,在 models 的 fieldMeta 中指定的 i18n 内容会覆盖 enums 或 dictionaries 中设置的值。
通过文件名以 locale 代码开头,_resources.json 结尾,如 en-US_resources.json 。
{ "models": { "example_i18n_Student": { // 模型 key "name": "Student", "fields": { // 字段自身的翻译 "id": "ID", // "字段名": "翻译内容" "gender": "gender" } } }, "enums": { "io.terminus.trantor.example.enums.Gender": { // 枚举 java class name "MALE": "male", // 枚举 name -> i18n label "FEMALE": "female", "UN_KNOW": "un_know" } }, "dictionaries": { // 字典 key "ScoreEnum": { "Excellent": "Excellent", // 字典 name -> i18n label "Good": "Good" } }}