如何解决Symfony 使用 JMS Serializer 从实体存储库返回 json
我使用带有 JMS Serializer Bundle 的 Symfony 4.4 并在控制器中创建简单的方法:
$serializer = $this->container->get('serializer');
$response = $serializer->serialize($unitRepository->findAll(),'json',['groups' => ['normal']]);
return new JsonResponse($response);
但是返回没有数据的数组,例如:
"[[],[],[]]"
知道如何解决这个问题吗?谢谢大家的帮助:)
解决方法
您可能需要将 normal
组注释添加到您希望在响应中看到的单元实体属性中。
use JMS\Serializer\Annotation\Groups;
class Unit
{
/** @Groups({"Default","normal"}) */
protected $id;
}
或者不指定任何这样的组应该返回所有可用的属性:
$response = $serializer->serialize($unitRepository->findAll(),'json');
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。