【发布时间】:2015-05-25 17:40:30
【问题描述】:
在我的 Symfony2/doctrine2 应用程序中,我有两个实体,Media 和 Recipe。
它们可以通过 oneToMany 或 ManyToMany 关联来链接。
在 oneToMany 关系的情况下,我使用以下代码来检索链接到 Media 实例的 Recipe:
$accessor = PropertyAccess::createPropertyAccessor();
$reflect = new ReflectionClass($media);
$shortName = $reflect->getShortName();
$value = $accessor->getValue($element, $shortName);
但是,如果关系是多对多,并且如果我为属性指定了自定义名称,则前面的代码不起作用。
如何以编程方式从 Media 类的注释映射中检索 mappedBy 的“配方”?
/**
* @ORM\OrderBy({"sortablePosition" = "ASC"})
* @Assert\Valid()
* @ORM\ManyToMany(targetEntity="\AppBundle\Entity\Core\Media", mappedBy="recipes", cascade={"persist", "remove"})
*/
protected $medias;
【问题讨论】:
标签: symfony doctrine-orm annotations mapping accessor