我有一个结构体,是通过Serde反序列化创建的。我想在其中添加一个类型为Url
的字段,但该字段不需要被反序列化:
#[derive(Deserialize, Debug)]
pub struct Flow {
#[serde(skip_deserializing)]
pub source: Url,
}
Serde抱怨Url
未满足Default
特征。我已经尝试使用和不使用派生Default
,但都不行。那么,我唯一的选择是自己实现Url
的Default
特征吗?
source
没有被反序列化,当反序列化一个Flow
时,Serde应该将什么放入其中? - JmbFlow
实现Default
,而不是Url
,因为你不能为不属于当前 crate 的类型实现不属于当前 crate 的 traits。为了使Url
实现Default
,需要修改url
crate。 - Joe ClayOption<Url>
替代。 - Grégory OBANOS