JMSSerializerBundle - 仅在学说关系中序列化ID

时间:2015-03-24 17:25:42

标签: symfony doctrine-orm jmsserializerbundle

例如,让我们说我有两个实体ArticleComment,通过单向 manyToOne 关系映射到文章的注释。我想知道的是,如果可以序列化关系,但在mappedOne中,只能序列化ID。

例如,如果我序列化文章,我会得到一个完整的json表示形式(包括id,title,content ...)。

{"title":"article title", "content":"article content", "id":"7"}

但是如果我序列化评论,我希望它能够完整地展示自己的json表示,但是在文章字段中,我只想要文章ID。< / p>

{"id":"2", "author":"foo","content":"comment content","linked_article":{"id":"7"}}

非常感谢!

1 个答案:

答案 0 :(得分:1)

在控制器操作(getCommentAction)中,注释中是否有序列化程序组?

我认为通过将这个注释放在控制器动作上

@Rest\View(serializerGroups={"id","comment"}

在您的文章实体中

/**
 * @JMS\Serializer\Annotation\Groups({"id", "article"})
*/
protected $id;

它应该有用。