【问题标题】:Entity not Found Exception on Doctrine2在 Doctrine2 上找不到实体异常
【发布时间】:2018-01-16 07:49:25
【问题描述】:

场景:我有两个实体。产品和产品组。 Product 与 ProductGroup 具有多对一的关系。我软删除 ProductGroup。然后我尝试在一个产品上调用 getProductGroup,该产品的产品组被软删除。

问题: 我得到的是“消息:找不到实体”,而不是预期的 null 结果。异常消息。

$productGroupName = $product->getProductGroup() !== null ? $product->getProductGroup()->getName() : '';

【问题讨论】:

    标签: doctrine-orm orm zend-framework2


    【解决方案1】:

    这是因为 Doctrine2 正在生成代理,而不是 soft-deletable 的情况,尽管我正在使用它。但是在没有实现soft-deleteable 的实体中,我遇到了同样的问题。所以对我来说固定的是在定义关系的实体注释上添加fetch="EAGER"。喜欢

    /**
     * @var \ReisesparerAPIs\Entity\Vouchers
     *
     * @ORM\OneToOne(targetEntity="ReisesparerAPIs\Entity\Vouchers", inversedBy="couponOrder", fetch="EAGER")
     * @ORM\JoinColumns({
     *   @ORM\JoinColumn(name="voucher_id", referencedColumnName="id")
     * })
     */
    private $voucher;
    

    Reference Link

    【讨论】:

      猜你喜欢
      • 2014-06-07
      • 2011-06-18
      • 1970-01-01
      • 2014-04-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多