34 个稳定版本
1.7.8 | 2023 年 9 月 7 日 |
---|---|
1.6.7 | 2023 年 6 月 18 日 |
1.3.25-beta |
|
1.2.1-beta |
|
0.12.24 |
|
297 在 数据库接口 中
84 每月下载量
用于 admin-gp
395KB
7K SLoC
绿色桶
Rust 的 ORM 类似 MongoDB API
为了模拟多对一和多对多的关系,使用了一种简化的替代方案(具有动态添加元素的类型选择字段)。
注意
MongoDB 在 4.2、4.4、5.0、6.0 版本上进行了测试
- 对 GreenPanel 的支持暂时不可用。
要求
- mongodb
- serde
- chrono
- image
- lazy_static
- rand
- regex
- rust-argon2
- serde_json
- slug
- validator
- uuid
- async-lock
- async-trait
- futures
- tokio
- rust-i18n
- metamorphose
安装 mongodb(如果尚未安装)
点击链接 安装 MongoDB。
用法
基本示例
示例测试
模型参数
(所有参数都是可选的)
参数 | 默认值 | 描述 |
---|---|---|
db_query_docs_limit | 1000 | 限制查询结果。 |
is_add_doc | true | 在数据库中创建文档。 false - 或者,使用它来验证来自网络表单的数据。 |
is_up_doc | true | 在数据库中更新文档。 |
is_del_doc | true | 从数据库中删除文档。 |
ignore_fields | 空字符串 | 不包括在数据库中的字段(以逗号分隔)。 |
is_use_addition | false | 允许进行额外操作和额外验证的方法。 |
is_use_hooks | false | 允许钩子方法 - impl Hooks for ModelName。 |
文档链接
字段类型
见文档 -fields。
开发者方法
- hash()
- set_hash()
- obj_id()
- set_obj_id()
- created_at()
- updated_at()
- meta()
- new()
- json()
- update_dyn_field()
- custom()
- add_actions()
- add_validation()
- pre_create()
- post_create()
- pre_update()
- post_update()
- pre_delete()
- post_delete()
- create_index()
- drop_index()
- create_indexes()
- drop_indexes()
- aggregate()
- count_documents()
- delete_many()
- delete_one()
- distinct()
- drop()
- estimated_document_count()
- find_many_to_doc_list()
- find_many_to_json()
- find_one_to_doc()
- find_one_to_json()
- find_one_to_instance()
- find_one_and_delete()
- collection_name()
- namespace()
- check()
- save()
- delete()
- create_password_hash()
- verify_password()
- update_password()
- 运行测试用例
变更日志
许可证
本项目受MIT和Apache Version 2.0许可证的许可。
依赖项
~34–48MB
~839K SLoC