Python repository toolkit · 0.1.2
One repository.
Every storage path.
用一套克制的异步 CRUD 接口连接 SQLAlchemy、SQLModel 与 Elasticsearch,同时保留每个后端的原生能力。
repository.py unified surface
# one API, native models
db = AsyncDatabase.create(
"sqlite+aiosqlite:///app.db"
)
users = ModelRepository(
SQLAlchemyAdapter(db), User, UserRead
)
created = await users.add({
"id": 1, "name": "Ada"
})
active = await users.find(
eq("active", True)
)01 / DESIGN
统一常用路径,
不隐藏后端能力。
Repository 负责输入输出模型转换,Adapter 负责存储操作。常用 CRUD 使用一致接口,JOIN、全文评分和聚合仍可使用原生查询。
- Typed
- 泛型 Repository 与完整类型标记
- Explicit
- 更新、删除和事务边界保持明确
- Pluggable
- 通过 StorageAdapter 接入其他存储
02 / DOCUMENTATION
从模型到事务,
逐层理解 ormate。
READY TO BUILD
