了解双向关系中拥有方如何运作

Rey*_*rPM 2 php entity symfony doctrine-orm

我正在使用任务验证项目架构php app/console doctrine:schema:validate(代码不是我的,我只是想让它正常工作)。我看到的常见消息之一是:

  • 字段 Mapyet\AfiliadoBundle\Entity\Widget#negocio 位于双向关系的拥有方,但目标实体 Mapyet\AfiliadoBundle\Entity\Negocio# 上指定的mappedBy关联不包含所需的“inversedBy”属性。

这是$negocio在实体中定义的方式Widget.php

/**
 * @ORM\ManyToOne(targetEntity="Negocio", mappedBy="widget")
 */
private $negocio;
Run Code Online (Sandbox Code Playgroud)

这是$widget在实体中定义的方式Negocio.php

/**
 * @ORM\OneToMany(targetEntity="Widget", inversedBy="negocio")
 */
private $widget;
Run Code Online (Sandbox Code Playgroud)

这个定义有什么问题?

ziz*_*jab 5

反转它们:

小部件.php

/**
 * @ORM\ManyToOne(targetEntity="Negocio", inversedBy="widget")
 */
private $negocio;
Run Code Online (Sandbox Code Playgroud)

内戈西奥.php

/**
 * @ORM\OneToMany(targetEntity="Widget", mappedBy="negocio")
 */
private $widget;
Run Code Online (Sandbox Code Playgroud)

http://docs.doctrine-project.org/en/2.0.x/reference/association-mapping.html#one-to-many-bidirection