I think the @darkangelo answer need explainations.
The findAll()
method return a collection of objects.
$categorias = $this->getDoctrine()
->getRepository('AppBundle:Categoria')
->findAll();
To build your response, you have to add all getters of your entities to your response like :
$arrayCollection = array();
foreach($categorias as $item) {
$arrayCollection[] = array(
'id' => $item->getId(),
// ... Same for each property you want
);
}
return new JsonResponse($arrayCollection);
Use QueryBuilder
allows you to return results as arrays containing all properties :
$em = $this->getDoctrine()->getManager();
$query = $em->createQuery(
'SELECT c
FROM AppBundle:Categoria c'
);
$categorias = $query->getArrayResult();
return new JsonResponse($categorias);
The getArrayResult()
avoids need of getters.
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…