1 个不稳定版本

0.1.0 2023年4月17日

#12 in #object-id

MIT 许可证

4KB

serde_with_object_id

此crate提供DisplayFromObjectId,旨在使用serde_withserde提供对mongodb::bson::oid::ObjectId的序列化和反序列化。

用法

use serde::{Deserialize, Serialize};
use serde_with::serde_as;
use serde_with_object_id::DisplayFromObjectId;

#[serde_as]
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct SomeDocument {
    #[serde_as(as = "DisplayFromObjectId")]
    #[serde(rename = "_id")]
    pub id: String,
    #[serde_as(as = "Option<DisplayFromObjectId>")]
    pub id_optional: Option<String>,
}

安装

cargo add serde -F derive
cargo add mongodb -F bson-serde_with
cargo add serde_with_object_id

lib.rs:

serde_with_object_id

此crate提供DisplayFromObjectId,旨在使用serde_withserde提供对mongodb::bson::oid::ObjectId的序列化和反序列化。

用法

use serde::{Deserialize, Serialize};
use serde_with::serde_as;
use serde_with_object_id::DisplayFromObjectId;

#[serde_as]
#[derive(Deserialize, Serialize)]
pub struct SomeDocument {
    #[serde_as(as = "DisplayFromObjectId")]
    pub id: String,
    #[serde_as(as = "Option<DisplayFromObjectId>")]
    pub id_optional: Option<String>,
}

依赖项

~24–35MB
~662K SLoC