gpt4 book ai didi

symfony - Doctrine2 OneToMany 没有mappedBy

转载 作者:行者123 更新时间:2023-12-02 12:04:29 24 4
gpt4 key购买 nike

我有一个实体“listing”,其中 OneToMany 到实体“view”,它们之间的键是 view.content_id,它保存列表的 ID,但是,它也与其他实体相关,因此通过添加

/**
* @var Listing
*
* @ORM\ManyToOne(targetEntity="\Acme\Bundle\Entity\Listing", inversedBy="views")
* @ORM\JoinColumns({
* @ORM\JoinColumn(name="content_id", referencedColumnName="id")
* })
*/
private $listing;

对于 View ,它会制动,因为保存 View 实体时 content_id 变为 null。

如何修复它?

上市方关系:

/**
* @var views
*
* @ORM\OneToMany(targetEntity="\Acme\Bundle\Entity\View", mappedBy="listing")
* @ORM\JoinColumns({
* @ORM\JoinColumn(name="id", referencedColumnName="content_id")
* })
*/
private $views;

我通过加入 Listing.views 并添加WITH content_type = :ContentType 来进行查询,这会区分一些“ View ”结果。

最佳答案

我来参加聚会已经很晚了,但我想我会回答,以防它对其他人有帮助。

由于您在两个实体之间建立了关系,您现在必须为该属性分配一个对象,而不是 FK 值本身。就像这样:

$listing = $em->getRepository('Acme\Bundle\Entity\Listing')
->find($content_id);
$view->setListing($listing);

而不是:

$view->setListing($content_id);

当然,如果结果是别的东西,我很想知道。

:^)

关于symfony - Doctrine2 OneToMany 没有mappedBy,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16004371/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com