使用JMSSerializer组可以使用或不使用内联选项来序列化对象

时间:2016-01-26 14:06:28

标签: php symfony jmsserializerbundle jms-serializer

我希望使用PHP库JMSSerializer为同一个实体提供两种不同的表示形式,这可以通过其组功能轻松实现。

问题是我有一个表示子对象的属性被内联的表示,一旦它们没有。如果它以某种方式工作会很好:

<?xml version="1.0" encoding="UTF-8"?>
<serializer>
    <class name="SomeEntity">
        <property name="structure" type="SomeOtherEntity" groups="group1" inline="true"/>
        <property name="structure" type="SomeOtherEntity" groups="group2"/>
    </class>
</serializer>

我想以这种方式实现的目标是SomeEntity可以使用group1序列化,SomeOtherEntity内联,group2如果SomeOtherEntity应该没有内联,但这似乎不起作用(我猜名称属性有点独特)。

解决方案是将另一种方法与VirtualProperty结合使用,但是我必须触及该类,我宁愿避免使用它,因为它是一个纯粹的序列化问题。

任何更好的想法如何解决这个问题?

0 个答案:

没有答案