我正在使用它:
$users = $em->getRepository('UserBundle:User')->getallUsers($search);
$response = new Response(json_encode($users));
$response->headers->set('Content-Type', 'application/json');
return $response;
用户是多个实体而不是单个结果。
但我得到了这个:
[{},{},{},{},{},{}]
我想要类似的东西:
[ { label: $user.getName(), value: $user.getId() }, ... ]
我该怎么做?
编辑:我也尝试json_encode($users->toArray())
然后我收到此错误:
在非对象
上调用成员函数toArray()
答案 0 :(得分:6)
您需要有一种序列化对象的方法,您不能指望json_encode
神奇地猜测允许对哪些字段进行编码。
我推荐用于此任务的好捆绑包是JMSSerializerBundle。 在使用之前,请务必仔细阅读文档!
最终结果可能如下所示:
$users = $em->getRepository('UserBundle:User')->getallUsers($search); $response = new Response($container->get('serializer')->serialize($users, 'json'));
答案 1 :(得分:0)
尝试{{ your_variable|raw }}
抱歉迟到了