Skip to content

国际化 ​

控制台支持中文和英文。实现刻意保持简单:中文原文就是翻译键。

后端与模板 ​

python
from .i18n import _

_("已删除 {} 个账号", n)        # 中文原文 + 位置参数
jinja
{{ _('上传转写') }}
  • 当前语言由 LangMiddleware 按请求设置:优先读 lang cookie,没有时按 Accept-Language(以 en 开头为英文,其它为中文)。
  • 英文模式下在 app/i18n_en.py 的 EN 字典里查找原文,找不到时显示中文原文。
  • /admin/lang?to=en&next=/admin/jobs 切换语言并跳回原页面。

前端脚本 ​

app/static/hub.js 里的动态文字用 T('中文原文', 参数)。需要翻译的键要加到 app/i18n.py 的 JS_KEYS 列表,页面会把它们的英文注入给脚本。

新增文字的步骤 ​

  1. 用中文写原文并包进 _() 或 T()。
  2. 在 app/i18n_en.py 添加 "中文原文": "English text",占位符 {} 数量保持一致。
  3. 前端文字同时加入 JS_KEYS。
  4. 切到英文界面检查页面。

已知限制 ​

运行时写入数据库的文字(如代理节点的原始报错、AI 结果的标题)保存的是写入当时的语言,切换界面语言后不会改变。

文档版本 v3.4.0 · 与项目版本同步