【发布时间】:2015-02-12 10:23:14
【问题描述】:
我使用 jms 序列化程序包来序列化一个超类,但我想像这样序列化我的超类:
/**
* @Discriminator(field = "type", map = {"vehicle": "Vehicle", "car": "Car", "moped": "Moped"})
*/
class Vehicle { }
class Car extends Vehicle { }
class Moped extends Vehicle { }
但它不起作用,我可以在我的 json 中为孩子输入“类型”,但不适用于我的超类 Vehicle。 我立即使用 hack:
$data = $this->serializer->serialize($vehicle, 'json');
if(!strpos(",\"type\":", $data))
{
$data = substr_replace($data ,",\"type\":\"vehicle\"}",-1);
}
添加我的字段,然后可以反序列化我的对象。
您对此有什么更清晰的想法吗?
【问题讨论】:
标签: symfony jmsserializerbundle