- 博客(116)
- 收藏
- 关注
原创 零基础入门python70:Docker Compose 编排完整后端
Dockerfile 使用 Python 3.11 slim、固定依赖和非 root 用户;健康检查验证的是正在运行的应用,不是“build 成功”。
2026-09-07 16:42:51
原创 零基础入门python69:为 FastAPI 项目构建可复现 Docker 镜像
FastAPI 项目最终验收包括注册、权限、缓存和 AI 降级。只有测试通过的代码才进入镜像,镜像构建成功也不能替代健康检查。
2026-09-07 16:42:40
13
原创 零基础入门python68:FastAPI 完整博客运行与项目验收
上一篇练习围绕“AI配额、审计与失败降级”。参考做法是先运行上一篇的测试,再用一个成功请求和一个失败请求验证边界;本篇在同一项目上增加新能力。
2026-09-07 16:42:27
14
原创 零基础入门python67:FastAPI AI配额、审计与失败降级
上一篇练习围绕“AI标题、摘要和标签”。参考做法是先运行上一篇的测试,再用一个成功请求和一个失败请求验证边界;本篇在同一项目上增加新能力。
2026-09-07 16:42:13
3
原创 零基础入门python66:FastAPI AI标题、摘要和标签
流程是正文提交、模型建议、字段校验、用户确认、最终保存。模型建议默认不覆盖数据库。标签去重保留顺序,最多五个。对同一正文可按内容哈希缓存,但 key 要包含提示词版本。让 FakeAI 返回空标题或 20 个标签,服务端应拒绝或降级,而不是保存脏数据。
2026-09-07 16:41:59
27
原创 零基础入门python65:FastAPI 安全调用大模型API
上一篇练习围绕“依赖替换和AI假客户端”。参考做法是先运行上一篇的测试,再用一个成功请求和一个失败请求验证边界;本篇在同一项目上增加新能力。
2026-09-07 09:16:27
399
原创 零基础入门python64:FastAPI 依赖替换和AI假客户端
上一篇练习围绕“pytest与测试数据库”。参考做法是先运行上一篇的测试,再用一个成功请求和一个失败请求验证边界;本篇在同一项目上增加新能力。
2026-09-07 09:16:09
111
原创 零基础入门python63:FastAPI pytest与测试数据库
上一篇练习围绕“SSE流式响应”。参考做法是先运行上一篇的测试,再用一个成功请求和一个失败请求验证边界;本篇在同一项目上增加新能力。
2026-09-07 09:15:53
78
原创 零基础入门python62:FastAPI SSE流式响应
上一篇练习围绕“后台任务和审计日志”。参考做法是先运行上一篇的测试,再用一个成功请求和一个失败请求验证边界;本篇在同一项目上增加新能力。
2026-09-07 09:15:35
97
原创 零基础入门python61:FastAPI 后台任务和审计日志
上一篇练习围绕“安全文件上传”。参考做法是先运行上一篇的测试,再用一个成功请求和一个失败请求验证边界;本篇在同一项目上增加新能力。
2026-09-07 09:15:20
94
原创 零基础入门python60:FastAPI 安全文件上传
上一篇练习围绕“限流、超时与降级”。参考做法是先运行上一篇的测试,再用一个成功请求和一个失败请求验证边界;本篇在同一项目上增加新能力。
2026-09-04 09:14:07
258
原创 零基础入门python59:FastAPI 限流、超时与降级
上一篇练习围绕“缓存抽象与失效”。参考做法是先运行上一篇的测试,再用一个成功请求和一个失败请求验证边界;本篇在同一项目上增加新能力。
2026-09-04 09:13:51
279
原创 零基础入门python58:FastAPI 缓存抽象与失效
上一篇练习围绕“统一异常和错误响应”。参考做法是先运行上一篇的测试,再用一个成功请求和一个失败请求验证边界;本篇在同一项目上增加新能力。
2026-09-04 09:13:38
186
原创 零基础入门python57:FastAPI 统一异常和错误响应
参考做法是先运行上一篇的测试,再用一个成功请求和一个失败请求验证边界;本篇在同一项目上增加新能力。
2026-09-04 09:13:25
194
原创 LeetCode 350. 两个数组的交集 II|Python 解法详解
这道题的关键是:统计较短数组的元素频次,再扫描另一个数组。理解这一点后,再结合边界条件检查,代码就能保持清晰且稳定。
2026-09-04 09:13:00
196
原创 零基础入门python56:FastAPI 评论、点赞与唯一约束
上一篇练习围绕“作者权限下的修改删除”。参考做法是先运行上一篇的测试,再用一个成功请求和一个失败请求验证边界;本篇在同一项目上增加新能力。
2026-09-03 09:29:14
156
原创 零基础入门python55:FastAPI 作者权限下的修改删除
上一篇练习围绕“分页、搜索和排序”。参考做法是先运行上一篇的测试,再用一个成功请求和一个失败请求验证边界;本篇在同一项目上增加新能力。
2026-09-03 09:28:58
171
原创 零基础入门python54:FastAPI 分页、搜索和排序
上一篇练习围绕“文章创建与响应模型”。参考做法是先运行上一篇的测试,再用一个成功请求和一个失败请求验证边界;本篇在同一项目上增加新能力。
2026-09-03 09:28:40
236
原创 零基础入门python53:FastAPI 文章创建与响应模型
上一篇练习围绕“current_user鉴权依赖”。参考做法是先运行上一篇的测试,再用一个成功请求和一个失败请求验证边界;本篇在同一项目上增加新能力。
2026-09-03 09:28:27
197
原创 零基础入门python52:FastAPI current_user鉴权依赖
上一篇练习围绕“OAuth2表单登录与JWT”。参考做法是先运行上一篇的测试,再用一个成功请求和一个失败请求验证边界;本篇在同一项目上增加新能力。
2026-09-03 09:28:13
397
原创 零基础入门python51:FastAPI OAuth2表单登录与JWT
上一篇练习围绕“注册与Argon2密码哈希”。参考做法是先运行上一篇的测试,再用一个成功请求和一个失败请求验证边界;本篇在同一项目上增加新能力。
2026-09-02 09:19:11
159
原创 零基础入门python50:FastAPI 注册与Argon2密码哈希
上一篇练习围绕“数据库初始化与迁移思路”。参考做法是先运行上一篇的测试,再用一个成功请求和一个失败请求验证边界;本篇在同一项目上增加新能力。
2026-09-02 09:18:53
353
原创 零基础入门python49:FastAPI 数据库初始化与迁移思路
上一篇练习围绕“SQLAlchemy模型与会话”。参考做法是先运行上一篇的测试,再用一个成功请求和一个失败请求验证边界;本篇在同一项目上增加新能力。
2026-09-02 09:18:41
182
原创 零基础入门python48:FastAPI SQLAlchemy模型与会话
上一篇练习围绕“Pydantic请求响应模型”。参考做法是先运行上一篇的测试,再用一个成功请求和一个失败请求验证边界;本篇在同一项目上增加新能力。
2026-09-02 09:18:22
186
原创 零基础入门python47:FastAPI Pydantic请求响应模型
请求模型决定客户端能提交什么,响应模型决定服务端愿意公开什么。ORM 对象中的 password_hash 绝不能出现在用户响应里;密码只在注册请求的内存中出现。id: intemail: str# 边界清理放在模型,权限和数据库查询仍放在服务层。id: int输入 title=" Python " 应保存为 Python;空标题、过短正文返回 422,业务函数不会执行。from_attributes 只说明如何从 ORM 对象读取属性,不会替你加载关系。
2026-09-02 09:18:06
225
原创 零基础入门python46:FastAPI 配置、环境变量与依赖注入
上一篇练习围绕“ASGI、应用对象与自动文档”。参考做法是先运行上一篇的测试,再用一个成功请求和一个失败请求验证边界;本篇在同一项目上增加新能力。
2026-09-01 09:52:46
690
原创 零基础入门python44:Django商城从空目录启动与最终验收
库存边界测试应覆盖库存为 0、购买数量为 0、数量超过库存和正常购买四种情况;每种情况都要断言状态码和数据库库存,不能只看响应文本。
2026-09-01 09:52:17
225
原创 零基础入门python43:Django接口测试与库存边界
管理员查看全部订单应使用独立的权限类和 ViewSet,不能修改普通用户的。权限越宽的接口越应该单独命名、单独测试。
2026-09-01 09:52:02
259
原创 零基础入门python42:订单权限与用户数据隔离
购物车只能在订单事务提交成功后清空;库存不足时应保留购物车,方便用户修改数量。清空动作可以在 Service 成功返回后执行。
2026-09-01 09:51:48
144
原创 零基础入门python41:下单 API 与订单查询
价格范围应把字符串转换成 Decimal,再追加price__gteprice__lte;负数和 min 大于 max 返回 400,不要让数据库默默返回空列表掩盖输入错误。
2026-08-31 09:27:57
147
原创 零基础入门python40:商品、分类 API 与筛选
订单项小计应使用或模型 property 计算,不能让客户端提交小计。它是由事实字段推导出的只读结果。
2026-08-31 09:27:44
134
原创 零基础入门python39:DRF序列化器——输入校验和稳定输出
并发库存测试需要两个独立数据库连接;SQLite 对行锁支持有限,应在 PostgreSQL/MySQL 上验证。无论测试数据库如何,库存不足回滚测试必须保留。
2026-08-31 09:27:32
620
原创 零基础入门python38:事务、库存锁和失败回滚
取消状态可以加入,服务层只允许 pending 订单取消;已支付订单需要退款流程,不能用删除记录代替。
2026-08-31 09:27:20
173
原创 LeetCode 349. 两个数组的交集|Python 解法详解
这道题的关键是:将两个数组转成集合既完成去重,也支持高效成员判断;集合交运算直接得到共同元素。理解这一点后,再结合边界条件检查,代码就能保持清晰且稳定。
2026-08-31 09:26:59
151
原创 零基础入门python37:订单和订单项——为什么要保存价格快照
购物车数量接口应读取当前数量后加减,并限制结果在 1 到库存之间;不要让客户端直接提交一个超过库存的最终值而跳过校验。
2026-08-28 09:32:17
332
原创 零基础入门python36:用 Django Session 实现购物车
订单详情对象级权限应使用,而不是先get(pk=id)再在模板中判断,否则错误对象可能已经泄露。
2026-08-28 09:32:00
225
原创 零基础入门python35:Django用户登录与权限边界
Admin 中创建时间应设置,订单金额不能开放编辑,因为订单是财务事实,修改应经过支付或退款服务并留下审计记录。
2026-08-28 09:31:46
228
原创 零基础入门python34:Django Admin——给运营人员一个可用后台
title = "库存状态"return (("low", "低于 5"), ("empty", "已售罄"))过滤器返回新的 QuerySet,不在 Python 中循环判断。把拼进模板或 SQL 都不安全,Admin 的queryset会为参数化查询负责。
2026-08-28 09:31:31
167
原创 零基础入门python33:Django QuerySet——从商品查询到数据库 SQL
删除被商品使用的分类会触发。这不是异常写错了,而是主动阻止破坏数据关系。
2026-08-28 09:31:16
245
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅