#[serde(rename)] 似乎是正确的选择,但文档未说明是否可行或如何执行。
此JSON对象:
{
"name" : "myobject"
"info" :
{
"counter" : "3"
"foo" : "bar"
}
}
Run Code Online (Sandbox Code Playgroud)
相应的Flat Rust结构应为:
#[derive(Deserialize)]
struct Object {
name: String,
#[serde(rename="info.counter")] // wrong syntax here !!
count: i32,
#[serde(rename="info::foo")] // neither this works
foo: String,
}
Run Code Online (Sandbox Code Playgroud)