1

我遇到了 JMS 序列化器和继承类的问题。当我序列化我的实体时,由于继承类,它不处理 JMSSerializer Annotation ......那么我如何设置 JMSSerializer Annocation 与类继承?

例子 :

/**
 * Class Category
 *
 * @Serializer\ExclusionPolicy("all")
 */
class Category extends BaseCategory
{
    /**
     * @var integer $id
     *
     * @Serializer\Expose
     */
    protected $id;
}


/**
 * Class BaseCategory
 */
class BaseCategory
{
    /**
     * @var Dish
     */
    protected $dishs;

    /**
     * @var string
     */
    protected $name;
}

当我序列化类别时,返回的 json 看起来像:[{"dishs":[{"name":"Salade","id":5}],"name":"...","id":1 }]。不应用 ExclusionPolicy 注释。

你有什么想法为什么?如果我在同一个实体中设置所有字段,效果很好,但它破坏了我的所有模板......

谢谢

4

1 回答 1

0

您从 BaseCategory 继承 - 您不能指望这会起作用。在您的基类中设置您的 ExclusionPolicy - 在这种情况下,您的扩展类将从 BaseCategory 继承。

于 2015-09-05T13:31:33.153 回答