扩展项目功能


确定修改范围

在已有项目中添加功能,应优先沿用现有架构、组件和数据约定。开始前先检查当前实现,确认是否已经存在相近功能,避免重复开发或引入第二套处理方式。

以“听溪书单”项目增加阅读状态筛选为例:

请为当前“听溪书单”项目增加{按阅读状态筛选书籍}的功能。

状态范围:{未读、在读、已读}。
默认行为:{展示全部书籍}。
组合规则:{状态筛选应与现有关键词搜索同时生效}。
空结果提示:{当前条件下没有匹配书籍}。

实施要求:
1. 先检查现有数据结构、搜索逻辑和页面组件;
2. 复用已有样式与交互方式;
3. 如需调整数据结构,说明是否影响已有数据;
4. 不改变收藏功能与原有排序规则。

验证范围:
- 不选择状态时显示全部结果;
- 单独筛选每种状态;
- 筛选与关键词搜索组合使用;
- 清除筛选后恢复正确结果;
- 无匹配内容时显示提示。

请先给出实施计划,再根据确认后的范围修改。

image-20261025182854143

预期结果应包含可使用的功能、相关测试或检查记录,以及涉及文件的变更说明。若发现旧数据缺少阅读状态,应先明确采用补充默认值、迁移数据还是保留兼容逻辑。

明确接口约定

开发后端接口时,应写明请求参数、响应字段、错误情况及数据存储方式。接口名称相同并不代表行为已经明确,例如“查询书籍”仍需确定是否分页、如何排序、搜索哪些字段。

请为虚构的{“听溪书单”}项目设计一个查询书籍的HTTP接口。

项目条件:{使用Go,沿用仓库现有框架与目录结构}。
接口用途:{按关键词查询书名,并返回分页结果}。
必要字段:{书籍ID、书名、作者、阅读状态}。
查询条件:{关键词、页码、每页数量}。

请先阅读现有路由、错误处理和测试代码,再提出方案。
方案需要明确:
1. 请求路径、参数类型及默认值;
2. 页码或每页数量不合法时如何处理;
3. 无匹配结果时的响应;
4. 与现有接口风格如何保持一致;
5. 需要新增或修改的测试。

不得直接连接生产数据库,不修改现有鉴权规则。
本轮只交付接口方案,待确认后再实现。

image-20261025183605435

对于学习用途,可要求 Claude Code 先解释处理流程,再给出最小实现;对于正式项目,则应优先确认兼容性、鉴权、输入检查和数据一致性。

评论

登录后查看