自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(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

原创 零基础入门python45:FastAPI ASGI、应用对象与自动文档

FastAPI 部分从本篇开始,暂无前置练习。

2026-09-01 09:52:32 153

原创 零基础入门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关注的人

提示
确定要删除当前文章?
取消 删除