我在我的实体中定义了以下关系:
实体区
/**
* @var areaHasCategory $categories
*
* @ORM\OneToMany(targetEntity="areaHasCategory", mappedBy="area", cascade={"ALL"})"
*/
private $categories;
实体areaHasCategory
/**
* @var area $area
*
* @ORM\Id
* @ORM\ManyToOne(targetEntity="area", inversedBy="categories")
* @ORM\JoinColumn(name="pkfkArea", referencedColumnName="pkId", nullable=false)
*/
private $area;
/**
* @var category $category
*
* @ORM\Id
* @ORM\ManyToOne(targetEntity="category", inversedBy="areas")
* @ORM\JoinColumn(name="pkFkCategory", referencedColumnName="pkId", nullable=false)
*/
private $category;
实体类别
/**
* @var areaHasCategory $areas
*
* @ORM\OneToMany(targetEntity="areaHaCategory", mappedBy="category", cascade={"ALL"})"
*/
private $areas;
当我从控制器中的数据库中读取区域时,类别的arrayCollection为空。 我用夹具保存了数据。 分析器显示所有选择语句,当我除了从类别表中读取数据的查询时,一切都很好。 但$ area-> getCategories()为空。
有人知道我做错了吗?
答案 0 :(得分:0)
尽量不要将@ORM \ Id用于关系字段,并为主键添加单独的字段。