跳转至

TranslationTable (翻译表)

翻译表用于保存项目内的多语言术语、角色名、字幕词汇或其他结构化对照数据。SDK 中包含 TranslationTableTranslationTableColumnTranslationTableEntry 三个模型。

获取翻译表

for table in project.translation_tables():
    print(table)

table = client.get_translation_table("table_id")
entries = client.list_translation_table_entries(table.id)

TranslationTable 属性

属性 类型 说明
id str 翻译表唯一标识
name str 翻译表名称
description str | None 描述
columns list[TranslationTableColumn] 列定义
row_count int 行数
owner_id str 所有者 ID
project_id str 项目 ID
resource_id str | None 关联资源 ID
created_at datetime 创建时间
updated_at datetime 更新时间
extra dict 后端返回的额外字段

TranslationTableColumn 属性

属性 类型 说明
key str 列 key,例如 jaenzh
label str 展示名
index int 列顺序

TranslationTableEntry 属性

属性 类型 说明
id str 条目唯一标识
table_id str 所属翻译表 ID
project_id str 项目 ID
row_index int 行序号
raw_values dict[str, str] 各列原始值
created_at datetime 创建时间
updated_at datetime 更新时间
extra dict 后端返回的额外字段

创建与更新

详见 CRUD 与更新接口 - 翻译表

table = client.create_translation_table(
    "project_id",
    name="Character names",
    description="JA / EN / ZH names",
    columns=[
        {"key": "ja", "label": "日本語", "index": 0},
        {"key": "en", "label": "English", "index": 1},
        {"key": "zh", "label": "中文", "index": 2},
    ],
)

entry = client.create_translation_table_entry(
    table.id,
    raw_values={"ja": "司", "en": "Tsukasa", "zh": "司"},
)

client.update_translation_table(table.id, description="Updated glossary")
client.update_translation_table_entry(
    entry.id,
    raw_values={"ja": "司", "en": "Tsukasa", "zh": "司"},
)

可读输出

print(table)
# TranslationTable(name='Character names', id='...', columns=3, rows=1)

print(entry)
# TranslationTableEntry(id='...', table_id='...', row=0, values=3)