{
"forms": {
"upload_dir_error": "创建上传目录时出错",
"file_create_error": "创建文件时出错",
"multipart_stream_error": "多部分流错误",
"file_write_error": "写入文件时出错",
"required": "此项为必填项",
"too_short": "长度过短(最少 {} 个字符)",
"too_long": "长度过长(最多 {} 个字符)",
"email_invalid": "邮箱地址格式不正确",
"url_invalid": "请输入有效的网址",
"hash_error": "哈希计算错误:{}",
"password_empty": "密码不能为空",
"filter_invalid_value": "static/media 过滤器接收到无效值({}),应为文件路径",
"number_invalid": "数字格式无效",
"number_required": "此项必填",
"integer_required": "必须为整数",
"decimal_required": "必须为小数格式",
"min_value": "最小值应为 {}",
"max_value": "最大值不能超过 {}",
"precision_max": "小数点后最多 {} 位",
"precision_min": "小数点后至少 {} 位",
"color_invalid": "颜色格式无效(格式:#RRGGBB 或 #RGB)",
"color_no_hash": "颜色值必须以 # 开头",
"color_bad_hex": "包含非十六进制字符",
"slug_invalid": "Slug 格式无效",
"slug_no_dash": "Slug 不能以连字符开头或结尾",
"uuid_invalid": "UUID 格式无效(应为:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx)",
"json_invalid": "JSON 格式无效:{}",
"ipv4_only": "仅支持 IPv4 地址",
"ipv6_only": "仅支持 IPv6 地址",
"ip_invalid": "IP 地址无效",
"date_invalid": "日期格式无效",
"date_too_old": "日期过早(最早:{})",
"date_too_far": "日期过晚(最晚:{})",
"time_invalid": "时间格式无效",
"file_required": "请至少选择一个文件",
"file_extension_blocked": "文件 '{}' 类型不允许。允许的扩展名:{}",
"finalize_error": "字段 '{}' 处理出错:{}",
"template_missing": "缺少模板:{}",
"render_js_error": "JavaScript 渲染出错:{}",
"tera_not_configured": "Tera 模板引擎未配置",
"config_not_found": "配置未在扩展中找到",
"hint_slug": "格式示例:字母-数字-连字符",
"hint_uuid": "格式示例:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"hint_json": "需要有效的 JSON 格式",
"hint_ip_v4": "IPv4 格式示例:192.168.1.1",
"hint_ip_v6": "IPv6 格式示例:2001:0db8:85a3::8a2e:0370:7334",
"hint_ip": "IPv4 或 IPv6 格式均可",
"validation_overflow": "检测到栈溢出:验证过程中出现无限递归",
"choice_invalid": "选项无效",
"choice_invalid_value": "无效选项:{}",
"select_required": "请选择一个选项",
"checkbox_required": "请至少选择一个选项",
"multipart_error": "多部分表单上传出错",
"body_error": "读取请求体时出错",
"aegis_query_error": "解析查询字符串失败: {}",
"aegis_urlencoded_error": "解析URL编码正文失败: {}",
"aegis_json_error": "解析JSON正文失败: {}",
"auth_required": "需要进行身份验证",
"role_insufficient": "权限不足",
"time_too_old": "时间过早(最早:{})",
"time_too_far": "时间过晚(最晚:{})",
"datetime_too_old": "日期时间过早(最早:{})",
"datetime_too_far": "日期时间过晚(最晚:{})",
"duration_invalid": "持续时间格式无效(应为秒数)",
"duration_too_short": "持续时间过短(最短:{} 秒)",
"duration_too_long": "持续时间过长(最长:{} 秒)",
"file_max_count": "最多允许上传 {} 个文件",
"file_too_large": "文件 '{}' 过大({}MB > 最大限制 {}MB)",
"file_invalid_image": "文件 '{}' 不是有效的图片",
"image_too_wide": "图片 '{}' 宽度过大({}px > {}px)",
"image_too_tall": "图片 '{}' 高度过大({}px > {}px)",
"boolean_required": "必须勾选此项",
"slug_unicode_invalid": "只能使用字母、数字、连字符和下划线",
"unique_field_taken": "此 {} 已被占用",
"unique_value_taken": "字段 '{}' 的值已被占用",
"unique_constraint_violated": "违反了唯一性约束",
"db_error": "数据库错误:{}",
"text_field_too_large": "文本字段过大(最大1MB)",
"upload_too_large": "文件上传过大(最大{}MB)"
},
"csrf": {
"missing": "缺少 CSRF 令牌",
"invalid": "CSRF 令牌无效",
"invalid_or_missing": "CSRF 令牌无效或缺失",
"forbidden": "CSRF 验证失败",
"session_write_error": "会话写入失败"
},
"error": {
"source": "来源:{}",
"AppError": "应用错误",
"build": "构建出错:{}",
"internal": "内部错误",
"forbidden": "访问被拒绝",
"not_found": "未找到资源",
"validation": "验证失败:{}",
"database": "数据库出错:{}",
"io": "输入/输出错误:{}",
"template": "模板出错:{}",
"custom": "自定义错误:{}",
"title": {
"not_found": "页面不存在",
"forbidden": "访问被拒绝",
"validation": "验证失败",
"database": "数据库错误",
"template": "模板渲染错误",
"internal": "服务器内部错误"
},
"path_not_found": "请求路径 '{}' 不存在",
"internal_occurred": "发生内部错误",
"context_occurred": "发生应用错误"
},
"title": {
"template": "'{}' 的模板错误"
},
"build": {
"validation_failed": "构建验证失败:{}",
"check_failed": "构建检查失败,共 {} 个错误",
"template_failed": "模板加载失败:{}",
"db_missing": "启用 'orm' 功能时需要数据库连接",
"component_not_ready": "组件 '{}' 尚未就绪"
},
"middleware": {
"host_invalid": "无效的主机名:'{}'(允许的主机:{})",
"host_debug": "无效的主机名:'{}'。请将其添加到 RUNIQUE_ALLOWED_HOSTS 环境变量中。",
"bad_request": "请求格式错误"
},
"html": {
"404_title": "404",
"404_text": "页面不存在",
"500_title": "500",
"500_text": "服务器内部错误",
"500_notice": "我们的团队已收到通知,正在处理此问题。",
"429_title": "429",
"429_text": "请求过多,请稍后再试。",
"back_home": "返回首页",
"critical_error_title": "严重错误",
"critical_error_text": "错误处理系统本身发生了错误。",
"critical_error_contact": "这种情况不应发生,请联系系统管理员。"
},
"debug": {
"stack_trace_title": "详细错误堆栈",
"stack_trace_tip": "最上方的错误(层级 0)通常是根本原因,后续错误显示错误在代码中的传播路径。"
},
"flash": {
"welcome": "欢迎 {},您的账号已创建成功!",
"fix_errors": "请修正以下错误",
"success_demo": "这是一条成功提示。",
"info_demo": "这是一条信息提示。",
"warning_demo": "这是一条警告提示。",
"error_demo": "这是一条错误提示。"
},
"log": {
"db_connecting": "正在连接 {} 数据库……",
"db_connected": "数据库连接成功({})",
"db_failed": "数据库连接失败",
"db_engine": "数据库引擎:{}",
"template_render_error": "模板渲染出错",
"error_handler": "发生严重错误",
"error_handled": "错误已处理",
"files_count": "正在向表单添加 JavaScript 文件",
"js_file_skip": "跳过 JavaScript 文件",
"already_initialized": "日志记录器已初始化"
},
"cli": {
"creating_project": "正在创建项目 '{}'……",
"admin_detected": "检测到 Admin 模块 → 正在启动守护进程",
"add_admin_hint": "请在构建器中添加 .with_admin(...) 以启用管理后台。",
"daemon_error": "[守护进程] 错误:{}",
"cargo_run_failed": "应用服务器启动失败(cargo run)",
"file_not_found": "未找到文件:{}\\n请确保您在 Runique 项目的根目录下运行此命令。",
"admin_not_found": "未找到 Admin 文件:{}\\n请使用 admin!{{}} 宏创建 src/admin.rs 文件。",
"name_empty": "项目名称不能为空",
"name_invalid": "项目名称只能包含字母、数字、下划线或连字符",
"name_dash": "项目名称不能以连字符开头",
"folder_exists": "文件夹 '{}' 已存在",
"cargo_run_expect": "启动 cargo run 失败",
"project_created": "项目 '{}' 创建成功!",
"getting_started": "开始使用:",
"cd_hint": "cd {}",
"cargo_run_hint": "cargo run"
},
"daemon": {
"modification_detected": "检测到文件变更 → 正在重新生成……",
"unable_read": "无法读取:{}",
"parse_error": "解析错误:{}",
"no_resource": "admin!{{}} 中未定义任何资源 — 无需生成",
"with_admin_disabled": "with_admin 已禁用 → 守护进程已停止",
"operational": "守护进程运行中 → src/admin/generated.rs",
"generation_error": "生成代码时出错:{}",
"watcher_error": "文件监视器出错:{}",
"unable_create": "无法创建文件监视器:{}",
"unable_watch": "无法监视 {}:{}"
},
"macro": {
"named_fields_only": "仅支持具名字段的结构体",
"structs_only": "仅适用于结构体",
"forms_field_required": "结构体 '{}' 必须包含 'Forms' 字段",
"field_no_name": "字段缺少名称",
"model_form_named_only": "DeriveModelForm:仅支持具名字段的结构体",
"model_form_structs_only": "DeriveModelForm:仅适用于结构体"
},
"parser": {
"string_expected": "应为字符串字面量,实际得到:{}",
"string_eof": "应为字符串字面量,但已到达文件末尾",
"array_expected": "权限列表应为 [...] 格式,实际得到:{}",
"array_eof": "权限列表应为 [...] 格式,但已到达文件末尾",
"role_required": "permissions: [...] 中至少需要指定一个角色",
"punct_expected": "应为 '{}',实际得到:{}",
"punct_eof": "应为 '{}',但已到达文件末尾",
"title_required": "admin!: 'title' 是必填项",
"permissions_required": "admin!: 'permissions' 是必填项",
"list_display_exclude_exclusive": "admin!: 'list_display' 和 'list_exclude' 互斥"
},
"TemplateMessage": {
"debug_info_title": "调试信息",
"debug_field_title": "标题",
"debug_field_count": "字段数量",
"debug_error_count": "错误数量",
"debug_main_message": "主要信息",
"debug_root_cause": "根本原因",
"debug_details": "附加详情",
"debug_request_info": "请求信息",
"debug_http_method": "HTTP 方法",
"debug_path": "路径",
"debug_query_params": "查询参数",
"debug_http_headers": "HTTP 请求头",
"debug_template_info": "模板信息",
"debug_template_name": "模板名称",
"debug_error_line": "错误行号",
"debug_template_source": "模板源代码",
"debug_available_templates": "可用模板",
"debug_stack_trace_title": "详细错误追踪",
"debug_stack_trace_tip": "最顶层的错误(层级 0)通常是根本原因。后续错误显示错误在代码中的传播路径。",
"debug_environment": "环境",
"debug_debug_mode": "调试模式",
"debug_enabled": "已启用",
"debug_disabled": "已禁用",
"debug_rust_version": "Rust 版本",
"debug_app_version": "应用版本",
"debug_status_code": "状态码",
"debug_header_name": "名称",
"debug_header_value": "值"
},
"admin": {
"group": "组",
"groups": "组",
"resource": "资源",
"resources": "资源",
"can_create": "创建",
"can_read": "读取",
"can_update": "修改",
"can_delete": "删除",
"can_update_own": "修改",
"can_delete_own": "删除",
"name": "名称",
"username": "用户名",
"email": "电子邮箱",
"staff": "工作人员",
"superuser": "超级用户",
"active": "激活",
"user": {
"username_too_short": "用户名太短(最少3个字符)",
"invalid_email": "邮箱地址格式不正确"
},
"login": {
"title": "登录",
"subtitle": "请登录以访问管理面板",
"label_username": "用户名",
"label_password": "密码",
"btn_submit": "登录",
"error_session": "打开会话时出错。",
"error_credentials": "凭据不正确或权限不足。",
"error_locked": "尝试次数过多。账户已被临时锁定。请在{}秒后重试。"
},
"logout": {
"success": "已成功登出。"
},
"access": {
"no_auth_handler": "未配置身份验证处理程序。请在AdminConfig上调用.auth(MyAuth)。",
"insufficient_rights": "访问管理权限不足"
},
"dashboard": {
"title": "仪表板",
"subtitle": "应用程序概览",
"card_resources": "资源",
"th_resource": "资源",
"th_key": "键",
"th_permissions": "权限",
"th_actions": "操作",
"btn_list": "列表",
"btn_create": "创建",
"empty_title": "未注册资源",
"empty_desc": "在src/admin.rs中使用admin!{{}}宏声明您的资源,然后运行runique start"
},
"list": {
"breadcrumb_admin": "管理",
"entries_count_one": "条目",
"entries_count_many": "条目",
"btn_create": "创建",
"th_id": "id",
"th_actions": "操作",
"bool_true": "是",
"bool_false": "否",
"btn_detail": "详情",
"btn_edit": "编辑",
"btn_delete": "删除",
"confirm_delete": "确定要删除吗?",
"empty_title": "无条目",
"empty_desc": "请先创建一个项目。",
"btn_create_first": "创建第一个",
"search_placeholder": "搜索..."
},
"create": {
"title": "创建",
"breadcrumb": "创建",
"card_info": "信息",
"no_fields": "当前没有可用字段。",
"btn_cancel": "取消",
"btn_submit": "创建",
"success": "条目创建成功!"
},
"edit": {
"title": "编辑",
"breadcrumb": "编辑",
"card_info": "信息",
"no_fields": "当前没有可用字段。",
"btn_cancel": "取消",
"btn_submit": "保存",
"success": "条目更新成功!"
},
"detail": {
"title": "详情",
"breadcrumb": "详情",
"entry_label": "条目",
"btn_list": "← 列表",
"btn_edit": "编辑",
"btn_delete": "删除",
"confirm_delete": "删除此条目?"
},
"reset_password": {
"btn": "重置密码",
"success_email": "Reset link sent to {}.",
"success_link": "Reset link (mailer not configured): {}",
"error_no_email": "No email field found for this user.",
"error_send": "Error sending email: {}",
"email_subject": "重置您的密码",
"email_title": "密码重置",
"email_greeting": "您好,",
"email_body": "请点击下方链接重置您的密码(有效期1小时):",
"email_btn": "重置我的密码",
"email_ignore": "如果您没有请求此重置,请忽略此消息。"
},
"user_created": {
"email_subject": "欢迎 — 请设置您的密码",
"email_sent": "欢迎邮件已发送至 {}。",
"email_greeting": "欢迎,",
"email_body": "已为您创建账户。请点击下方链接设置您的密码:",
"email_btn": "设置我的密码",
"email_validity": "此链接有效期为1小时。如果您未期待此消息,请忽略。"
},
"delete": {
"title": "删除",
"breadcrumb": "删除",
"heading": "确认删除",
"btn_cancel": "← 取消",
"btn_confirm": "是,永久删除",
"warning": {
"title": "警告!",
"desc": "您即将删除条目",
"of": "来自资源",
"irreversible": "此操作不可撤销。"
},
"success": "条目删除成功!",
"not_found": "资源未找到。"
},
"bulk": {
"no_selection": "未选择任何项目。",
"no_field_selected": "未修改任何字段。",
"delete_success": "个项目已删除。",
"update_success": "个项目已更新。"
},
"base": {
"title": "管理",
"breadcrumb": "管理",
"toggle": "收起菜单",
"logout_title": "登出"
},
"superuser_wizard": {
"title": "=== 创建超级用户 ===",
"algo_prompt": "[1/5] 哈希算法",
"algo_argon2": "Argon2(推荐)",
"algo_bcrypt": "Bcrypt",
"algo_scrypt": "Scrypt",
"algo_custom": "自定义提供者",
"provider_path": "提供者路径",
"invalid_path": "无效路径。",
"username_prompt": "[2/5] 用户名",
"username_empty": "用户名不能为空。",
"username_taken": "该用户名已被使用。",
"email_prompt": "[3/5] 邮箱",
"email_invalid": "无效的邮箱地址。",
"email_taken": "该邮箱已被使用。",
"password_prompt": "[4/5] 密码",
"password_too_short": "密码至少需要10个字符。",
"confirm_prompt": "[5/5] 确认密码",
"password_mismatch": "密码不匹配,请重试。",
"review_algo": " 算法 : {}",
"review_username": " 用户名 : {}",
"review_email": " 邮箱 : {}",
"review_password": " 密码 : ••••••••",
"review_action": "操作",
"confirm_create": "确认并创建",
"change_algo": "更改算法",
"modify_password": "修改密码",
"success": "✓ 超级用户创建成功!",
"id_line": " ID : {}",
"username_line": " 用户名 : {}",
"email_line": " 邮箱 : {}"
},
"builtin": {
"invalid_id": "无效的标识符。",
"droit_resource_required": "请至少选择一个资源。",
"droit_exists": "权限 \"{}\" 已存在。",
"groupe_exists": "名为 \"{}\" 的组已存在。"
}
},
"makemigrations": {
"scanning": "正在扫描'{}'中的实体...",
"found_schema": "-> 找到架构: {}",
"found_extend": "-> 找到框架表扩展: {}",
"no_schema": "在'{}'中未找到schema()函数。",
"schema_count": "找到{}个架构。",
"updated_lib": "已更新{}",
"no_changes": "未检测到更改。您的架构是最新的。",
"destructive_detected": "检测到破坏性更改:",
"generated": "已生成: {}",
"snapshot_updated": "已更新快照: {}",
"seaorm_alter": "已生成SeaORM ALTER迁移: {}",
"batch_up": "已生成批量上升: {}",
"batch_down": "已生成批量下降: {}",
"apply_hint": "运行'sea-orm-cli migrate up'来应用。",
"extend_unknown_table": "extend!{{}} : \"{}\"不是已知的框架表。允许的表: {}。要扩展应用表,请直接修改其model!{{}}。",
"extend_invalid_syntax": "extend!{{}} : 语法无效。预期格式: table: \"表名\", fields: {{ ... }}",
"admin_positioned": "AdminTableMigration已定位在'{}'迁移之后",
"files_ready": "{}个文件已准备好迁移。"
},
"migrate": {
"applying": "正在从'{}'应用迁移...",
"run_hint": "运行: sea-orm-cli migrate up",
"complete_up": "迁移完成。",
"complete": "回滚完成。",
"available_for": "'{}'的可用回滚文件:",
"rolling_back_batch": "正在回滚批次: {}",
"done": "完成: {}",
"rolling_back": "正在回滚: {}",
"no_applied_dir": "未找到applied/目录。",
"by_time_header": "by_time (完整批次):",
"none_available": "没有可用的回滚文件。",
"usage": "用法:",
"usage_files": "runique migration down --files <table/timestamp> [<table/timestamp> ...]",
"usage_batch": "runique migration down --batch <timestamp>",
"no_down": "未找到down语句。",
"executing": "正在执行: {}"
},
"reset": {
"forgot_title": "忘记密码",
"reset_title": "新密码",
"success_title": "密码已重置",
"email_label": "电子邮件地址",
"new_password_label": "新密码",
"confirm_label": "确认密码",
"email_mismatch": "电子邮件地址与链接不匹配。",
"invalid_link": "无效链接。",
"invalid_or_expired": "重置链接无效或已过期。",
"password_min_length": "密码必须至少包含{}个字符。",
"password_mismatch": "两次输入的密码不一致。",
"check_inbox": "如果此地址与帐户关联,您将收到一封重置邮件。",
"email_subject": "密码重置请求",
"email_body": "<p>您好 {0},</p><p>请点击以下链接重置您的密码(有效期1小时):</p><p><a href=\"{1}\">{2}</a></p>"
},
"permission": {
"col.id": "ID",
"col.can_create": "创建",
"col.can_delete": "删除",
"col.can_delete_own": "删除(自己的)",
"col.can_read": "读取",
"col.can_update": "修改",
"col.can_update_own": "修改(自己的)",
"col.groupes": "组",
"col.resource_key": "资源",
"col.actions": "操作"
}
}