Comment afficher la valeur nulle dans JSON dans FOS Rest Bundle avec JMS Serializer?
j'ai eu un lisez ceci : https://github.com/schmittjoh/serializer/issues/77 mais n'a pas trouvé de moyen pour sérialiser les valeurs null en JSON pour FOS Reste bundle avec JMS sérialiseur (ce qui signifie tout simplement montrer la clé de la Doctrine de l'objet, même si sa valeur null).
j'utilise la configuration suivante dans composer.json
"jms/serializer-bundle": "0.12.*@dev",
"friendsofsymfony/rest-bundle": "0.13.*@dev",
JMS sérialiseur config
#jms-serializer
jms_serializer:
visitors:
json:
options: 0 # json_encode options bitmask
serialize_null: true
Ou le FOS Reste bundeswehr config
fos_rest:
view:
serialize_null: true
Ne fonctionne pas. Je ne suis pas en utilisant une vue, je suis "view_response_listener: 'force' " donc si une solution de la configuration peut être fournie, cela aiderait, merci.
3 réponses
Essayez ceci
dans votre contrôleur
$entity = $this->getEntity($id);
$context = new SerializationContext();
$context->setSerializeNull(true);
$serializer = $this->get('jms_serializer');
$response = new Response($serializer->serialize($entity, 'json', $context));
$response->headers->set('Content-Type', 'application/json');
return $response;
Mais l'interaction avec le fosrestbundle sur les configs n'est pas connu pour moi.
Vous pouvez définir l'option suivante dans la configuration depuis peu:
fos_rest:
serializer:
serialize_null: true
la façon la plus facile de faire cette fonctionnalité fonctionne comme un charme
ajouter la configuration supplémentaire suivante à votre option de configuration de fos_rest:
fos_rest:
serializer:
serialize_null: true