Doctrine - отношение результата родительского дочернего запроса - PullRequest
0 голосов
/ 02 апреля 2019

Я пытаюсь вытащить дерево данных - с одной сущностью.Родитель с дочерними отношениями.

Однако моя база данных не пуста, но результат возвращает пустой массив.

Есть предложения?

Это моя сущность: (также сгеттеры и сеттеры)

class MyClass  
{

public function __construct()
{
    $this->children = new ArrayCollection();
}

/**
 * @ORM\Id
 * @ORM\Column(type="integer")
 * @ORM\GeneratedValue(strategy="AUTO")
 */
protected $id;

/**
 * @ORM\ManyToOne(targetEntity="MyClass", inversedBy="children")
 * @ORM\JoinColumn(name="parent_id", referencedColumnName="id")
 * @Groups({"data"})
 */
private $parentAccount;

/**
 * @ORM\OneToMany(targetEntity="MyClass", mappedBy="parentAccount")
 */
private $children;

И мой конструктор запросов:

$query = $this->getMyClassRepository()
        ->createQueryBuilder('q')
        ->leftJoin('q.parentAccount', 'q')
        ->where('q.children = :children')
        ->getQuery();

    return $query;

1 Ответ

0 голосов
/ 02 апреля 2019

Я думаю, что вы должны установить детей по значению:

   $query = $this->getMyClassRepository()
            ->createQueryBuilder('q')
            ->leftJoin('q.parentAccount', 'q')
            ->where('q.children = :children')
            ->setParameter('children', $children)

            ->getQuery();

        return $query;
...