当前位置: 首页 > 知识库问答 >
问题:

为什么DateTime不能满足服务器de::序列化?

金理
2023-03-14
extern crate serde;
extern crate serde_json;

#[macro_use]
extern crate serde_derive;


use chrono::{self, Date,DateTime, TimeZone};
use serde_derive::{Serialize,Deserialize}; // 1.0.91


#[derive(Serialize,Deserialize )]
struct Test<Tz>
where Tz:TimeZone,
{
    t:DateTime<Tz>
}

fn main(){

}

上面的代码不会编译为错误:

错误[E0277]: trait绑定Chrono::datetime::DateTime

我有

chrono = {version="0.4",features = ["serde"]}

在我Cargo.toml

我发现实现在这里:https://docs.rs/chrono/0.4.6/chrono/struct.DateTime.html#impl-Serialize

完整的代码示例在这里https://play.rust-lang.org/?version=stable

但我不确定操场是否启用了serde功能。


共有1个答案

韩彬
2023-03-14

抱歉,伙计们,问题就像@crazysim在评论中说的那样。

DateTime没有实现反序列化特征。

如果我删除它,代码将工作:

extern crate serde;
extern crate serde_json;

#[macro_use]
extern crate serde_derive;


use chrono::{self,DateTime, TimeZone};



#[derive(Serialize )]
struct Test<Tz>
where Tz:TimeZone,
{
    t:DateTime<Tz>
}

fn main(){

}
 类似资料:
  • 我试图在Java中序列化,但在运行我的程序时,我收到一个。 查看类,我注意到它没有实现。 为什么不实现?

  • 我正在尝试使用boto构建DynamoDB表,这将在表中保存IAM策略的各个方面。我已经为keyschema定义了属性,我不理解错误。我对DYanmoDB和AWS非常陌生。这是我的代码: 这就是我得到的错误: botocore.exceptions.ClientError:调用CreateTable操作时发生错误(ValidationException):检测到1个验证错误:值'[com.amaz

  • 问题内容: 假设我们了解到, 用于类型明确的方法定义,GO编译器隐式定义了相同的方法类型和 反之亦然 ,如果我声明, 并宣布 然后GO编译器给出错误, 这表明,指针方法是隐式定义的, 反之亦然 在下面的代码中, GO编译器出现错误, 在,因为隐式指针方法满足接口,但是隐式非指针方法不满足。 题: 为什么隐式非指针方法不满足接口? 问题答案: 让我们看一下语言规范: 类型可能具有与之关联的 方法集

  • 我正在使用Eclipse for Java和AWS工具包。我运行以下代码: 我在控制台视图中看到: […{Name:Name,AttributeDataType:String,DeveloperOnlyAttribute:false,Mutable:true,Required:false,StringAttributeConstraints:{MinLength:0,MaxLength:2048}

  • 我一直在尝试打印和HTTP post使用Swift的一个移动应用程序,我可以用javascript和express登录它。js。但当使用Go创建的服务器时,它会给我: 下面你可以看到所有3种语言的代码: 斯威夫特: 在另一个文件的@obj func中调用: 戈朗代码: 可以阅读文章的Javascript服务器: 谢谢你抽出时间

  • 查看云服务器的后台会显示 cpu, 内存, 带宽, 系统盘读写等信息,如果一个应用的日活不断上升,由于资源的限制可能会导致部分用户的使用体验下降,那么如何在用户问题出现前通过查看这些指标来提前知道服务器已经到达瓶颈,需要升级服务器?