【问题标题】:JMSSerializer deserializing collectionJMSSerializer 反序列化集合
【发布时间】:2012-10-01 19:20:15
【问题描述】:

我在反序列化学说集合的序列化集合时遇到问题。找不到关于那个和任何主题的文档,我是 JMSSerializer 的新手。当我尝试反序列化时:

$collection = $serializer->deserialize($jsonData,'Doctrine\Common\Collections\ArrayCollection','json');

$collection 为空

当我设置为 null 而不是类名时,我在结果上有 assoc 数组。有没有一种优雅的方式来反序列化该 json?

编辑: 对不起。这是序列化的集合:

[{"id":88,"name":"Poland","created_at":"2012-09-28T11:59:06+0000"},{"id":90,"name":"Great Britain","created_at":"2012-09-28T11:59:06+0000"}]

【问题讨论】:

  • 你能把序列化的ArrayCollection的json粘贴到问题中吗?

标签: symfony doctrine-orm jmsserializerbundle


【解决方案1】:

哈!发现我做错了什么:) 我给反序列化方法错误的类型。应该是:

$serializer->deserialize($jsonData, 'ArrayCollection<EntityName>', 'json');

它给了我美丽的实体数组。

【讨论】:

  • 你在哪里找到这个解决方案?
  • 仅通过实验。不幸的是,没有找到文档,但看起来反序列化方法可以将类型参数作为类型参数,与此处定义的字符串相同:types
  • 正是我想要的。感谢您找到解决方案!
  • 很抱歉提出一个老问题,但是我想知道这是在控制器还是视图中完成的? 2 年过去了,文档仍然有些缺乏。
  • 您为我节省了很多工作,这个解决方案非常有效,谢谢
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-02-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多