我有一个安装了JMSSerializerBundle的symfony应用程序。
我的实体看起来像这样:
class MyEntity {
/**
* Attribute[]
*
* @ORM\OneToMany(targetEntity="AppBundle\Entity\Attribute", mappedBy="myEntity")
* @JMS\Groups({"attributeSet_detail"})
* @ORM\OrderBy({"position" = "ASC"})
*/
protected $attributes;
}
AppBundle\Entity\Attribute
实体具有布尔属性isActive
现在,我只想序列化MyEntity
(包括所有attributes
),但仅将属性isActive
设置为true
的那些序列化
答案 0 :(得分:3)
您可以使用JMS Serializer动态排除策略。
<?php
class MyObject
{
/**
* @Exclude(if="true")
*/
private $name;
/**
* @Expose(if="true")
*/
private $name2;
}
在这里查看文档:{{3}}