PHP-返回结果树

时间:2019-04-02 09:33:48

标签: php doctrine-orm entity symfony-3.4

我在Symfony项目中编写了一个api,以返回用户的所有帐户。那部分起作用。 现在,我需要有关如何在线程视图中返回该用户所有帐户列表的建议。 它应该返回帐户树-帐户->孩子->他们的孩子。

我的代码:

 public function getAccounts(User $user)
{
    $query = $this->getAccountRepository()
        ->createQueryBuilder('a')
        ->select('a')
        ->where('a.user = :user')
        ->setParameter('user', $user)
        ->getQuery();

    return $query;
}

然后在我的控制器中致电:

public function getUserAccountsPaginatedAction()
{
    $result = $this->get('account.service')->getAccounts($user);

    return $this->success($result, null, ['data']);
}

我认为我要拉的东西是在实体内部,所以我共享代码:

class Account extends BaseEntity
 {
   /**
 * @ORM\Id
 * @ORM\Column(type="integer")
 * @ORM\GeneratedValue(strategy="AUTO")
 * @Groups({"data"})
 */
   protected $id;

/**
 * @ORM\ManyToOne(targetEntity="LaunchPad\Base\Entity\Account\User")
 * @ORM\JoinColumn(name="user_id", referencedColumnName="id")
 * @Groups({"data"})
 */
private $user;

/**
 * @ORM\Column(name="parent_account_id", type="integer", nullable=true)
 * @Groups({"data"})
 */
private $parentAccount;

0 个答案:

没有答案