В проекте Symfony с доктриной ORM у меня есть две сущности: продукт и категория. У них есть отношение ManyToOne (продукт имеет одну категорию, многие продукты могут быть в одной категории).
Я создаю категорию, два продукта и устанавливаю категорию продуктов в одном контроллере.
$category = new Category();
$category->setName('Computer Peripherals');
$product = new Product();
$product2 = new Product();
$product->setCategory($category);
$product2->setCategory($category);
$entityManager = $this->getDoctrine()->getManager();
$entityManager->persist($category);
$entityManager->persist($product);
$entityManager->persist($product2);
$entityManager->flush();
dump($product);
dump($product2);
dump($category);
die;
В другом контроллере я проверяю продукты категорий, которые я создал.
$repository = $this->getDoctrine()->getRepository(Category::class);
foreach ($repository->findAll() as $category){
$products = $category->getProducts();
$products->initialize();
dump($products);
}
die;
Объект категории, выгруженный в первый контроллер, не имеет массива продуктов, заполненного созданными продуктами, в то время как категорияОбъект второго контроллера имеет два продукта внутри своего массива. Это противоречиво.