每个人都好!
使用FastAPI时,总是有一点让我很烦恼:Pydantic很好地验证数据,并不让垃圾进入。但是,Moment你将ORM引入后,你回到了隔离的模型,自己的规则,并且整个验证合同会被打破掉。
我个人并不喜欢SQLAlchemy,只是不我的风格,不带有恶意。现有的替代品要么将其包裹(SQLModel)要么带来了自己的模型系统(Tortoise)。我想找到一种方法,其中Pydantic模型就是数据库模型。一种类别,一种合同,验证的方法是进入和离开。
所以我尝试构建我认为2026年会是什么样的异步ORM的样子。Django样式的查询API因为我认为这是最好的之一。显式,不懒加载,不魔法,你看到的就是向数据库发送的内容。类型 Stub 自动生成了IDE知道每个字段和查找。Rust核心用于SQL生成和汇聚,避免了性能的便利性开销。
每个ORM都需要至少一个基本的后台管理台,所以我建了它。自动产生 CRUD、搜索、过滤、导出自你的模型。支持FastAPI、Litestar、Sanic、Quart、Falcon。
所有内容都是:
* **ORM:**[ github.com/mr-fatalyst/oxyde ]
* **Admin panel:**[ github.com/mr-fatalyst/oxyde-admin ]
* **一步一步FastAPI例子(从头开始的博客API):**[ github.com/mr-fatalyst/fastapi-oxyde-example ]
* **文档:**[ oxyde.fatalyst.dev ]
就执行 `pip install oxyde`,而已。Rust核心(oxyde-core)在Linux、macOS和Windows上作为预先构建的轮子发货,所以不需要Rust工具链了。
它是v0.5,beta。很期待听到你的想法,建议,批评,无所不用其极。如果某些东西已经缺失了,或许感觉得不好,我想听听。
评论 (0)