如何将两个实体与ManyToOne关联起来



在我的pages实体中,我通过"ManyToOne"添加了图标:

/**
* @ORMManyToOne(targetEntity="AppEntityIcons", inversedBy="pages")
* @ORMJoinColumn(nullable=false)
*/
private $icon;

public function getIcon(): ?Icons
{
return $this->icon;
}
public function setIcon(?Icons $icon): self
{
$this->icon = $icon;
return $this;
}

但我对此有问题,我收到一条错误消息:

执行SELECT t0.id AS id_1时发生异常,t0.unique_id AS unique_id_2,t0.name AS name_3,t0.template AStemplate_4,t0.slug AS slug_5,t0.icon_id AS icon_id_6 FROM page t0其中t0.slug=?LIMIT 1'with params["pages"]:

SQLSTATE[42S22]:未找到列:1054中的未知列"t0.icon_id"字段列表">

Doctrine将在relation_many表上搜索名为[relationed_one]_id的列。如果图标和页面的关系是由页面表上的另一个外键Icon_id建立的,则可以用@JoinColumn(name="another_foreign_id", referencedColumnName="another_primary_id")指示

https://www.doctrine-project.org/projects/doctrine-orm/en/2.6/reference/association-mapping.html#one-到许多双向

最新更新