SuperAPI AI 工具集

advanced-alchemy-types

编程与开发

查看项目

更新于 10-15 16:49

技能介绍

用途:该技能用于在 Advanced Alchemy 项目中按存储语义而非便利性选择自定义 SQLAlchemy 列类型,包括 DateTimeUTC、EncryptedString/EncryptedText、GUID、JsonB、PasswordHash 和 StoredObject。

主要能力与规则:UTC 时间字段要求传入带时区的输入并归一化为 UTC;加密字段需先确定加密后端与密钥来源,禁止在模型定义中硬编码真实密钥;自定义装饰器参与 SQLAlchemy 语句缓存时,类型构造参数须可哈希且缓存安全;文件对象与密码哈希列应视为带生命周期的字段,而非普通字符串。

用法示例:from advanced_alchemy.types import DateTimeUTC, EncryptedString, GUID, JsonB,并在 mapped_column 中分别指定 GUID 主键、DateTimeUTC 时间戳、EncryptedString(key=...) 与 JsonB。

校验清单:确认所选类型在目标数据库方言上行为正确;确认加密与密码哈希字段使用预期的后端和密钥管理路径;确认存储的日期时间带时区并归一化为 UTC;确认迁移能干净地渲染与重放这些自定义类型。

相关技能:用 advanced-alchemy-modeling 放置类型,用 advanced-alchemy-caching 处理缓存影响,用 advanced-alchemy-litestar 对齐文件对象或 DTO 传输契约。

限制:资料未提供具体安装命令、版本要求、支持的数据库方言清单及性能数据,需参考官方文档确认。