You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用shiny.i18n在R Shiny中实现翻译时出现键匹配错误

解决Shiny i18n翻译初始化错误

问题原因分析

  • 参数使用错误:调用Translator$new()时误用了复数参数translation_csvs_path,该参数用于指定存放多个翻译CSV文件的目录,而非单个CSV文件路径,传入单个文件会触发解析错误。
  • CSV格式不符合要求:shiny.i18n要求翻译CSV必须以key列为首列,作为各语言翻译的对应键值,你的CSV缺少该列,导致系统无法识别翻译键。

修复步骤

1. 修正翻译CSV文件格式

将translation_no.csv内容修改为:

key,en,no
Hello,Hello,Hei

2. 调整R代码参数

把translation_csvs_path改为单数形式translation_csv_path,明确指定单个CSV文件路径:

library(shiny)
library(shiny.i18n)

# 使用单数参数指定单个CSV文件
i18n <- Translator$new(translation_csv_path = "translation_no.csv")
i18n$set_translation_language("en")

ui <- fluidPage(p(i18n$t("Hello")))

server <- function(input, output) {}

shinyApp(ui, server)

3. (可选)消除警告

若要移除关于yaml配置文件的警告,可在工作目录创建i18n.yml配置文件,内容如下:

default_lang: en
languages:
  - en
  - no

随后在初始化Translator时指定该配置文件:

i18n <- Translator$new(
  translation_csv_path = "translation_no.csv",
  config_file = "i18n.yml"
)

内容的提问来源于stack exchange,提问作者Hesam Salehi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.03 14:05:23