GitHub user jiderox added a comment to the discussion: 
/superset/language_pack/zh/

<img width="665" height="765" alt="image" 
src="https://github.com/user-attachments/assets/369bf55d-548a-4244-ad7d-8a4fba1f65a3";
 />
superset本身的界面翻译是正常的,但是嵌入界面的翻译还是不行,
<img width="510" height="626" alt="image" 
src="https://github.com/user-attachments/assets/3273ac48-875b-4096-8296-c0622186eb6f";
 />
我的配置文件
# superset_config.py

# -------------------------------
# FEATURE FLAGS
# -------------------------------
FEATURE_FLAGS = {
    # 启用嵌入式 Superset Dashboard
    "EMBEDDED_SUPERSET": True,
    # 启用 Dashboard 原生过滤器
    "DASHBOARD_NATIVE_FILTERS": True,
    "DASHBOARD_RBAC": True,
}

# -------------------------------
# Guest Token 配置
# -------------------------------
# 定义可用于 Guest Token 的角色
GUEST_ROLE_NAME="Viewer"

# -------------------------------
# CSRF 配置
# -------------------------------
# 如果嵌入页面通过 API 调用 Guest Token,可以关闭 CSRF
WTF_CSRF_ENABLED = False

# -------------------------------
# X-Frame-Options / CSP 配置
# -------------------------------

# -------------------------------
# 代理修复(可选)
# -------------------------------
# 如果通过 Nginx 或其他反向代理访问,需要启用
ENABLE_PROXY_FIX = True

# -------------------------------
# 示例数据和加载配置
# -------------------------------
# 是否加载示例数据
LOAD_EXAMPLES = False
# 设置默认语言为中文
# ---------------------
# 🌐 多语言设置
# ---------------------
BABEL_DEFAULT_LOCALE = "zh"
#PUBLIC_ROUTES = ['language_pack']
BABEL_DEFAULT_FOLDER = "superset/translations"

LANGUAGES = {
    "zh": {"flag": "cn", "name": "简体中文"},
    "en": {"flag": "us", "name": "English"},
}
ENABLE_GUEST_TOKEN = True

GUEST_TOKEN_JWT_SECRET = "Xy7L9FvG3k8sDqH0u2b5M1aJz4TqYwPn"
GUEST_TOKEN_JWT_EXP_SECONDS = 3600
GUEST_TOKEN_JWT_AUDIENCE = "superset"
import logging
from superset.translations.utils import get_language_pack

# 初始化 logger
logger = logging.getLogger(__name__)

def override_bootstrap_locale(data):
    logger.warning("[DEBUG] override_bootstrap_locale called")

    current_locale = data.get("locale")
    logger.warning(f"[DEBUG] 当前语言环境: {current_locale}")

    # 判断语言环境
    if current_locale in ["zh", "zh_CN", "zh_Hans"]:
        try:
            lang_pack = get_language_pack("zh")
            data["locale"] = "zh"
            data["language_pack"] = lang_pack
            logger.warning(f"language_pack 内容示例: 
{list(data['language_pack'].items())[:100]}")
            logger.warning(f"[DEBUG] ✅ 已注入中文语言包,共 {len(lang_pack)} 条翻译。")
            # 👇 这里加中文确认信息
            logger.warning("🌏 Superset 已加载中文语言包,嵌入式页面将显示中文。")
        except Exception as e:
            logger.error(f"[DEBUG] ❌ 注入中文语言包失败: {e}")
    else:
        logger.warning("[DEBUG] Locale 非中文,跳过语言包注入。")

    return data

# 绑定函数
COMMON_BOOTSTRAP_OVERRIDES_FUNC = override_bootstrap_locale
-----------
[root@DMACC2 LC_MESSAGES]# ll
total 836
-rw-rw-r--. 1 azureuser azureuser 313627 Oct 28 07:31 messages.json
-rw-rw-r--. 1 azureuser azureuser 200593 Oct 28 07:55 messages.mo
-rw-r--r--. 1 azureuser azureuser 338039 Oct 27 09:07 messages.po
[root@DMACC2 LC_MESSAGES]# pwd
/data/superset/superset/translations/zh/LC_MESSAGES
这个目录下的编译文件也是好的

GitHub link: 
https://github.com/apache/superset/discussions/35864#discussioncomment-14802329

----
This is an automatically sent email for [email protected].
To unsubscribe, please send an email to: 
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to