如何序列化自定义findBy()方法?

时间:2018-01-31 04:27:44

标签: symfony serialization doctrine fosrestbundle

当我使用findBy()时,我的数据会自动序列化。

$users = $this->getDoctrine()->getRepository('AppBundle:User')->findBy($params, $orderBy, $limit, $offset);


/**
 * @VirtualProperty
 * @SerializedName("catagory")
 * @Groups({"user"})
 */
public function getCategoryId()
{
    return $this->category->getId();
}

但是当我从我的存储库中使用自定义MyfindBy()时,数据不会自动序列化。如何自动序列化数据?

解决方案:

不要在querybuilder上使用select。

1 个答案:

答案 0 :(得分:3)

请访问此https://symfony.com/doc/current/components/serializer.html

,按照symfony序列化程序的文档进行操作

(从那里按照你想要的经文文件)

通过自定义查询获取对象后,您可以将名为$persons的整个对象数组传递给$jsonContent = $serializer->serialize($persons, 'json');并将其发送给您的回复。将序列化程序组件安装到项目后。

如果不适合你,请通知我。谢谢。