scene 模块

场景管理W-02场景表 CRUD、列表查询、场景文件导入JSON/JSON Lines/CSV

功能

  • scene 表 CRUDlist/get/create/update/delete分页 {list, total}
  • scene_import 表只读列表(导入记录)
  • 场景导入 api/scene_import.dspyworld_id + file → 解析 → 事务批量落库 → 写导入记录
  • 枚举字段 appcodes 字典scene_type / scene_status / import_status
  • 世界下拉(依赖 world 模块world_id 逻辑关联,不加物理外键)

数据表

  • sceneid(str32 PK)、world_id(str32→world.id 逻辑关联)、name(255)、code(64 唯一)、 description(text)、scene_type(16)、status(16)、config_json(text)、created_at、updated_at
  • scene_importid(str32 PK)、world_id、file_name(255)、total/success/fail(int)、status(16)、created_at

接口REST 统一前缀 /api/,宿主应用挂载后路径为 /scene/api/.dspy

  • GET/POST list_scenes.dspy{status, data:{list, total}}(支持 page/rows/sort/order/world_id/name/code/scene_type/status 过滤)
  • GET get_scene.dspy?id= → 单条
  • POST create_scene.dspy / scene_update.dspy / scene_delete.dspy
  • POST scene_import.dspymultipart: world_id + file{status, data:{success,total,success_count,fail}}
  • GET get_search_world_id.dspy / get_search_scene_type.dspy / get_search_status.dspy[{value,text}]

错误结构(统一)

{code, message, field, detail}code 取值PARAM_REQUIRED / FIELD_REQUIRED / FIELD_TOO_LONG / WORLD_NOT_FOUND / DUPLICATE_CODE / PARSE_ERROR / DB_ERROR / NOT_FOUND。

集成

宿主应用入口 init() 调用 load_scene()from scene.init import load_scene。 库名统一 ServerEnv().get_module_dbname("scene")world 表用 get_module_dbname("world"),禁止硬编码。

开发顺序

2依赖 world

Description
No description provided
Readme 42 KiB