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

Keep the repository small.
Keep your options open.

阅读快速开始查看源代码 ↗
ESC

输入关键词开始搜索文档。

已复制到剪贴板