我在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;