Сериализация JMS @VirtualProperty не работает
Я пытаюсь добавить метод для сериализации, но сериализация JMS не показывает поле.
use JMSSerializerAnnotationGroups;
use JMSSerializerAnnotationVirtualProperty;
use JMSSerializerAnnotationSerializedName;
class Ads
{
/**
* @VirtualProperty
* @Type("string")
* @SerializedName("Foo")
* @Groups({"manage"})
*/
public function foo(){
$foo = 'foo';
return $foo;
}
...
}
и затем:
use JMSSerializerSerializationContext;
use JMSSerializerSerializerBuilder;
...
$context = new SerializationContext();
$context->setGroups(array('manage'));
$serializer = JMSSerializerSerializerBuilder::create()->build();
$jsonContent = $serializer->serialize($ad, 'json', $context);
Я не видел никаких примеров использования VirtualProperty.
синтаксис правильный? Что случилось?
спасибо.
1 ответов
Я заметил проблему. Перед объектом был создан объект "$ ad". Моя вина. Виртуальное свойство работает правильно.