Symfony 3.4 实体 属性 带有来自另一个实体的项目数组

Symfony 3.4 entity property with array of items from another entity

我有两个实体:

实体 1 - 品牌:

<?php
namespace ...;
//Here the use definitions

class Brand
{
    /**
     * @ORM\Column(name="id", type="integer")
     * @ORM\Id
     * @ORM\GeneratedValue(strategy="IDENTITY")
     */
    private $id;

    //More properties, getters and setters
}
?>

实体 2 - 产品:

<?php
namespace ...;
//Here the use definitions

class Product
{
    /**
     * @ORM\Column(name="id", type="integer")
     * @ORM\Id
     * @ORM\GeneratedValue(strategy="IDENTITY")
     */
    private $id;

    /**
     * @ORM\ManyToOne(targetEntity="Brand")
     * @ORM\JoinColumns({
     *   @ORM\JoinColumn(name="brand_id", referencedColumnName="id")
     * })
     */
    private $brand;

    //More properties, getters and setters
}
?>

我知道我可以直接得到一个品牌咨询的产品PRODUCT,多亏了ORM。但是有没有办法让所有产品咨询 BRAND 实体?

我的意思是,有没有办法将 属性 添加到 BRAND 实体中,像这样:

/**
 * @ORM\ManyToOne(targetEntity="Producto")
 * @ORM\JoinColumns({
 *   @ORM\JoinColumn(name="id", referencedColumnName="brand_id")
 * })
 */
private $listOfProducts;

我能得到一份产品清单吗?

是的,你可以。在您的品牌实体上,像这样添加 OneToMany 列:

<?php
namespace ...;
//Here the use definitions

class Brand
{
    /**
     * @ORM\Column(name="id", type="integer")
     * @ORM\Id
     * @ORM\GeneratedValue(strategy="IDENTITY")
     */
    private $id;

    /**
     * @ORM\OneToMany(targetEntity="AppBundle\Entity\Product", mappedBy="brand")
     */
    private $products;

    //More properties, getters and setters
}
?>