2个版本
0.0.2 | 2022年1月26日 |
---|---|
0.0.1 | 2022年1月24日 |
#5 in #administration
6KB
Adminix是类似于Django admin的actix - sqlx
入门
查看示例/
策略 / 权衡
Adminix使用过程宏实现。这是一个编译时类型,它可以内省数据库并构建actix服务器的路由和处理器。这些处理器是使用SSR实现的简单CRUD路由,使用了Maud模板库。它使用sqlx查询!宏在编译时确认宏生成的查询与数据库兼容。
优点
- Adminix本身很简单:只有几百行代码
- Adminix非常健壮:编译提供了许多关于正确行为的保证
- 很容易添加到现有的actix / sqlx项目中,其中数据库是真理的来源
缺点
- adminix不是rest API,所以如果你想要一个现在经典的back/front架构,你需要自己来
- 一些
⚠ 非常非常alpha
做了很多假设
- actix "3" 和 sqlx "4"
- 仅支持Sqlite
- 每个表都必须有一个INTEGER "id" 主键
- 外键仅针对"id",而且我并不是一个熟练的Rust开发者。
⚠ 没有嵌入式安全
应用程序需要确保认证。使用gards !
支持 / 路线图
☑ | 基本CRUD |
☑ | sqlite |
☐ | postgres |
☐ | mysql ? |
☑ | 外键链接 |
☐ | 保存可空(可选) |
☐ | 外键编辑 |
☑ | 反向外键链接 |
☑ | 后端过滤 |
☑ | 前端智能表格(排序、过滤) |
☑ | 主页/模板 |
☐ | 分页 |
☐ | 图像blob支持(只读) |
☐ | 多blob文件类型 |
☐ | 测试(过程宏 + 异步 = 🤔) |
☐ | 支持非id主键? |
☐ | 支持非id外键目标? |
欢迎帮助!
请,填写问题!我也接受合并请求,如果我不够反应迅速,请告诉我: ( f"julienfr{ meaning_of_life + 70 }@gmail.com" )
依赖项
~62MB
~1.5M SLoC