2014-11-19 2 views
4

JsonResponse에 문제가 있습니다. 내가 var_dump($users)를 사용할 때 그래서 나는 모든 데이터 배열을 가지고 있지만, 나에게 빈 배열을 반환 JsonResponsesymfony2 empty jsonResponse

$repo = $this->getDoctrine()->getRepository($repoName); 
$users = $repo->findAll(); 

return new JsonResponse($users); 

: 여기 내 코드입니다. 누군가가 무엇이 될 수 있었는지 알고 있습니까?

+0

나는 문제가 하나의 응답으로 여러 데이터 레코드를 가져 오려고하는 것입니다 생각합니다. 구문은'new JsonResponse (array ('name'=> $ name));'이어야합니다. –

+0

나는 아무런 효과를 시도하지 않았다 –

답변

15

이는 json으로의 직렬화 때문입니다. JsonResponse 아래에 json_encode 방법을 사용합니다. php이 직렬화하는 방법을 모르는 엔티티 배열이 있습니다.

그래서 필요한 것은 일반 배열입니다. 그것을 얻을 필요가 getArrayResult()

$repo = $this->getDoctrine()->getRepository($repoName); 
$users = $repo->createQueryBuilder('q') 
      ->getQuery() 
      ->getArrayResult(); 

return new JsonResponse($users); 
+0

좋아, 좋은 방법이지만 내 코드에서 결과를 나뭇 가지에 삽입하면 효과가 없다. 내 코드에서 나뭇 가지 결과가 작동해야합니다 ... –