7

starałem się postępować zgodnie z odpowiednią dokumentacją, tutaj:
http://jmsyst.com/libs/serializer/master/configuration
tutaj
http://jmsyst.com/libs/serializer/master/handlers
i tutaj
http://jmsyst.com/bundles/JMSSerializerBundle/master/cookbook/custom_handlersTworzenie obsługi JMS serializer w Symfony2

utknąłem gdy próbuje uzyskać budowniczy obiekt w symfony2 (zobacz drugi link dla tego obiektu). Usługa jest serializerem, który został już skompilowany. Gdzie powinienem zainicjować swój własny przewodnik?

Aktualizacja:
śledztwo jedno możliwe rozwiązanie:
$builder = \JMS\Serializer\SerializerBuilder::create();
lub
$builder = new \JMS\Serializer\SerializerBuilder();
może to będzie działać, ale byłoby miło niech już instanciated serializer skorzystać z mojego przewodnika. Aby uzyskać usługę serializera w kontrolerze: $serializer = $this->get('jms.serializer');

Odpowiedz

13

Rozwiązaniem jest utworzenie usługi z odpowiednią etykietą.

datetimezone_handler: 
    class:  MyVendor\MyBundle\Serializer\Handler\DateTimeZoneHandler 
    tags: 
     - { name: jms_serializer.subscribing_handler } 
+0

Zaoszczędzisz mój dzień dwa razy w tym miesiącu. Kiedyś serializowałem encję FosUser, dla jednostki "typ" potrzeby według "Mój \\ UserBundle \\ Entity \\ User" –

+0

To nie działa dla mnie. Mam to ustawione i nadal nie rejestruje programu obsługi. Nigdy nie dostaje się do funkcji getSubscribingMethods() w programie obsługi. – Nicolas

Powiązane problemy