7
Sto provando ad aggiungere un metodo per serializzare, ma JMS Serialize non mostra il campo.JMS Serialize @VirtualProperty non funziona
use JMS\Serializer\Annotation\Groups;
use JMS\Serializer\Annotation\VirtualProperty;
use JMS\Serializer\Annotation\SerializedName;
class Ads
{
/**
* @VirtualProperty
* @Type("string")
* @SerializedName("Foo")
* @Groups({"manage"})
*/
public function foo(){
$foo = 'foo';
return $foo;
}
...
}
E poi:
use JMS\Serializer\SerializationContext;
use JMS\Serializer\SerializerBuilder;
...
$context = new SerializationContext();
$context->setGroups(array('manage'));
$serializer = JMS\Serializer\SerializerBuilder::create()->build();
$jsonContent = $serializer->serialize($ad, 'json', $context);
non ho visto alcun esempio di come utilizzare VirtualProperty.
La sintassi è corretta? Che c'è?
Grazie.
Qual era il problema? Come l'hai aggiustato? Prova lo stesso con una configurazione yaml, non funziona neanche ... Grazie. – Soullivaneuh
Ok trovato perché. La configurazione di Yaml è abbastanza diversa. Devi separare le proprietà virtuali. Vedi qui: http://jmsyst.com/libs/serializer/master/reference/yml_reference – Soullivaneuh
Questo dovrebbe spiegare dove era il problema ma non capisco quella frase ... :( – martin