#mongo-db #orm #model #copy #mapping #collection #non-heap

已删除 rm_orm

Rust 的 MongoDB ORM

1 个不稳定版本

0.1.0 2023年12月18日

#143 in #mongo-db

MIT/Apache

20KB
479 代码行

rm_orm: Rust 的 MongoDB ORM

rm_orm 是一个开源、快速且内存高效的面向对象关系映射 (ORM) 库,用于 MongoDB,用 Rust 编写。它通过自动将结构体转换为模型,允许 Rust 结构体与 MongoDB 集合之间无缝集成。

特性

  • 派生模型:通过派生 Model 特性,轻松将您的 Rust 结构体转换为 MongoDB 模型。

  • 集合名称定制:使用 #[coll_name] 属性设置您模型的集合名称。

  • 非堆复制:rm_orm 设计用于效率,为 MongoDB 提供了非堆复制 ORM 解决方案。

入门指南

  1. 为您的结构体派生 Model 特性,并使用 #[coll_name] 定制集合名称

    #[derive(Model)]
    #[coll_name = "Books"]
    pub struct Book {
        // ... fields here
    }
    
  2. 连接到 MongoDB 并开始使用 ORM

    use rm_orm::{RmORM, Model};
    
    #[tokio::main]
    async fn main() {
        // Connect to MongoDB
        let db = RmORM::connect("admin", "123", "localhost", "27019", "main_db").await;
    
        // Create a new Book instance
        let mut the_book = Book::new(&db).await;
        the_book.fill(/* fill with your data */);
    
        // Save the book
        the_book.save().await.unwrap();
    }
    

您可以在整个文档中使用更新后的版本,新名称为 "rm_orm"。

依赖关系

~24–36MB
~668K SLoC