Product クラスで指定したグループに基づいてシリアル化しようとしています。完全な製品クラスはここで見ることができます。ドキュメントの例に従って使用しているコードは次のとおりです。
$serializer = $this->get('serializer');
$result = $serializer->serialize($param, 'json', SerializationContext::create()->setGroups(array('marketplace')));
したがって$param
、上記は基本的に Product オブジェクトの配列です。
ただし、何らかの理由で、これでも不要な製品属性がすべて出力されます (つまり、「マーケットプレイス」ではない他のグループに属する属性)。たとえば、属性「説明」。説明を「詳細」グループに含めるようにマークしましたが、「マーケットプレイス」グループを要求したときに応答の一部として返されるのはなぜですか?
/**
* @Groups({"detail"})
* @ORM\Column(name="description", type="string", length=350)
*/
protected $description;