我试着按照相关文档,在这里:
http://jmsyst.com/libs/serializer/master/configuration
这里
http://jmsyst.com/libs/serializer/master/handlers
在这里
http://jmsyst.com/bundles/JMSSerializerBundle/master/cookbook/custom_handlers
我试图在symfony2中获取构建器对象时遇到困难(请参阅此对象的第二个链接)。该服务是一个已经构建的序列化程序。我应该在哪里设置我自己的处理程序?
更新:
我正在研究一种可能的解决方案:
$builder = \JMS\Serializer\SerializerBuilder::create();
或
$builder = new \JMS\Serializer\SerializerBuilder();
也许这会工作,但让已经实例化的序列化程序使用我的处理程序会很好。要在控制器中获取序列化程序服务:$serializer = $this->get('jms.serializer');
答案 0 :(得分:15)
解决方案是使用正确的标记创建服务。
datetimezone_handler:
class: MyVendor\MyBundle\Serializer\Handler\DateTimeZoneHandler
tags:
- { name: jms_serializer.subscribing_handler }