JMSSerializer と FOSRestBundle を使用しています。いくつかの再帰を含む、かなり典型的なオブジェクト グラフがあります。
私が達成したいのは、特定の深さを超えて含まれるオブジェクト、または一般的には ID のみでリストされますが、直接シリアル化された場合はすべてのデータでリストされることです。
例: ユーザー => グループ => ユーザー
/user/1 をリクエストすると、結果は次のようになります
{ "id": 1, "name": "John Doe", "groups": [ { "id": 10 }, { "id": 11 } ] }
/group/10 をリクエストすると、次のようになります。
{ "id": 10, "name": "Groupies", "users": [ { "id": 1 }, { "id": 2 }, { "id": 4 } ] }
@MaxDeph を使用すると、含まれている配列を完全に非表示にできるため、 { "id": 1, "name": "John Doe", "groups": [] } を取得します
しかし、REST クライアントが必要に応じて ID をフェッチしたり、キャッシュを参照したり、何でもできるように、ID だけを含めたいと思います。
グループを使用して手動でこれをまとめることができることはわかっていますが、一貫性の理由から、アプリケーション全体でこの動作を有効にできるかどうか疑問に思っていました。おそらく maxdepth への参照を使用して、ID を含める場所と完全なものを含める場所を制御できます。オブジェクト?