symfony - 控制器中的querybuilder

时间:2016-01-02 23:22:51

标签: php mysql symfony doctrine load

我在我的控制器中使用querybuilder来接收数据并输出为json:

    $qb = $this->getDoctrine()->getManager();

    $qb = $qb->createQueryBuilder();

    $qb->select('c')
        ->from('AppBundle:Customer\Customer', 'c');

    $data = $qb->getQuery()->getResult();

    $response = new JsonResponse();
    $response->setData(
        [
            'data' => $data
        ]
    );

    return $response;

我的实体位于命名空间中:

namespace AppBundle\Entity\Customer;

use Doctrine\ORM\Mapping as ORM;
use Doctrine\Common\Collections\ArrayCollection;
use Symfony\Component\Validator\Constraints as Assert;


/**
 * @ORM\Table(name="customer")
 * @ORM\Entity(repositoryClass="AppBundle\Entity\Customer\Repository")
 */
class Customer {

....

表格中保存了两条记录。

当我加载url时,它只打印两个空数组而没有数据。

任何人都可以解释原因吗?

1 个答案:

答案 0 :(得分:1)

试试这个然后解压缩......

$response = new JsonResponse(); 
$response->setData(array( 'data' => $data ));