Jms serializer @JMS\Inline() 注解覆盖实际的 id

Jms serializer @JMS\Inline() annotation overrides an actual id

我在数据库中有 productproduct_detail table。

每个产品都有一个产品详细信息。

class Product
{
   /**
     * @var ProductDetail
     * @JMS\ReadOnly()
     * @ORM\OneToOne(targetEntity="ApiBundle\Entity\ProductDetail", mappedBy="product", cascade={"persist"})
     * @JMS\Inline()
     */
    private $detail;
}

我使用@JMS\Inline()注解只显示product_detailtable的详细信息。 但是当我序列化一个产品时,我得到了错误的 id。它必须是产品 ID,但 id returns 是产品详细信息 ID。是错误还是我做错了什么?

You should not expose the id from the detail when using inline.

来源:https://github.com/schmittjoh/JMSSerializerBundle/issues/460#issuecomment-113440743