SuperAPI AI 工具集

advanced-alchemy-routing

编程与开发

查看项目

更新于 10-15 16:49

技能介绍

用途:在 Advanced Alchemy 项目中实现 CRUD 路由模式,决定端点层采用服务支撑还是仅用仓储,并统一读写契约、分页与过滤。

主要能力:区分读 schema 与写 schema,当 API 契约与 ORM 模型不同时使用;集合路由围绕过滤与 LimitOffset 分页标准化;条目路由显式处理 get、patch、delete,并使用带类型的标识符;写入通过框架集成或显式服务选项提交,而非在控制器中临时编写。

使用方式:优先使用薄处理器,立即委托给服务或仓储;框架期望序列化 schema 对象时,避免直接返回 ORM 实例;列表与详情处理器保持分页、过滤和 loader 选项一致;仅当服务层无附加价值时退回仓储处理器。示例模式:@router.get("/authors") 异步函数 list_authors 接收 authors_service 与 limit_offset,调用 list_and_count,再通过 to_schema 返回 OffsetPagination[Author]。

适用场景:需要标准化 CRUD 路由、读写契约分离、分页过滤一致性的 Advanced Alchemy 应用。

限制与校验:确认列表路由保留过滤与分页语义;确认写路由使用预期的创建与更新 schema;确认删除处理器干净表达空响应;确认路由处理器不隐藏事务边界或 loader 行为。跨技能衔接:业务规则重的端点用 advanced-alchemy-services,仅仓储模式用 advanced-alchemy-repositories,框架语法与依赖注入细节参考 advanced-alchemy-litestar、advanced-alchemy-fastapi 或 advanced-alchemy-flask。参考文档见 https://advanced-alchemy.litestar.dev/latest/usage/routing.html 等。