专业技能
Python
Flask
Linux
Redis
Sqlalchemy
Celery
影刀RPA
个人项目
甘蔗知行阁
Flask、Redis、MySQL
这个项目主要是围绕md文档进行一些管理和阅读,并且支持在编辑md文档时添加图片(图片会保存至服务器)。后续有时间会引入AI Agent 来对网站中的文章进行针对与用户技术栈的学习建立
鼠标悬浮可查看更多最新发布
2026-03-25 20:52:43
500
SQLAlchemy Autoflush隐蔽Bug分析
本文深入分析了SQLAlchemy中由于Autoflush机制导致的隐蔽Bug问题。当开发者错误地将字典赋值给ORM对象列属性后,后续触发Lazy Loading时会自动执行Flush操作,而PyMySQL驱动不支持将字典类型作为普通列参数,导致TypeError。问题根源在于对SQLAlchemy会话管理机制的不了解,包括脏数据跟踪、自动刷新等设计原理。解决方案包括使用临时属性存储非持久化数据、转字典后修改、临时关闭Autoflush或确保类型匹配。该案例警示开发者需要深入理解ORM框架底层机制,区分临时数据与持久化数据的处理方式。
Python
SQLAlchemy
BUG
项目开发BUG
数据库操作