Вы можете использовать атрибут #[serde(skip)]
:
use serde::{Deserialize, Serialize}; // 1.0.88
#[derive(Deserialize, Serialize)]
struct MyStruct {
field1: i32, // this will be (de)serialized
#[serde(skip)]
field2: i32, // this will be skipped
}
Если тип должен быть сериализован de , рекомендуется сопровождать #[serde(skip)]
с атрибутом #[serde(default)]
(или #[serde(default = "fn_name")]
).Serde десериализует пропущенные поля, как если бы неявно добавлялось #[serde(default)]
, но для кого-то понятнее, если кто-то читает ваш код, если вы явно укажете, откуда будет получено это значение.
См .: