API 平台 - 在与资源相同的实体上使用“组”

问题描述

我使用的是 API 平台 2.6。我遇到了一个我不明白的案例。

举个例子:

/**
* @ApiResource()
**/
class Book {
   private string $title;
   private Book $book;
}

对于 POST/PATCH 方法,我们在“需要请求正文”中设置

{
   "title": "string","book": "string"
}

但是,如果我写

/**
* @ApiResource(denormalizationContext={"groups"={"book:write"}})
**/
class Book {
   /**
   * @Groups("book:write")
   **/
   private string $title;
   /**
   * @Groups("book:write")
   **/
   private Book $book;
}

因此,对于 POST/PATCH 方法,我们在“需要请求正文”中设置

{
   "title": "string",}

书不见了。 非规范化在与资源相同的子实体上使用时不起作用...

你能解释一下为什么吗?以及如何解决这个问题?

谢谢

================================================ === 编辑:

谢谢@rugolinifr 的回答。

确实链接让我找到了解决方案。

有兴趣的可以在文档中找到 ==> https://api-platform.com/docs/core/serialization/#force-iri-with-relations-of-the-same-type-parentchilds-relations

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)