Symfony JMSerializer按属性条件排除实体
我有一个安装了JMSSerializerBundle的symfony应用程序。Symfony JMSerializer按属性条件排除实体,symfony,jmsserializerbundle,jms-serializer,Symfony,Jmsserializerbundle,Jms Serializer,我有一个安装了JMSSerializerBundle的symfony应用程序。 我的实体如下所示: class MyEntity { /** * Attribute[] * * @ORM\OneToMany(targetEntity="AppBundle\Entity\Attribute", mappedBy="myEntity") * @JMS\Groups({"attributeSet_detail"}) * @ORM\OrderB
我的实体如下所示:
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
(包括所有属性
),但只有那些属性isActive
设置为true
的属性可以使用JMS序列化器动态排除策略
<?php
class MyObject
{
/**
* @Exclude(if="true")
*/
private $name;
/**
* @Expose(if="true")
*/
private $name2;
}
没有,对不起。如果我想排除单个属性,但排除整个对象不起作用,那么这很有用。