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

为什么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服务器: 谢谢你抽出时间

  • 我制作了一个FTP客户端(被动),它无法连接到服务器。我使用的FTP服务器是Filezilla;我只是用它来测试。每次我运行java程序(FTP客户端)时,Filezilla都会断开连接,并在Eclipse中出现以下错误: 这是FTP客户端: 这是我连接的程序: 还尝试编写我的lan ip而不是