Web サービス用の RESTful API を開発しています。また、エンティティ自体に属さないいくつかのプロパティを公開する必要があります。
たとえば、Pizza
エンティティ オブジェクトがあり、それには独自のsize
プロパティがありname
ます。FOSRestBundleとJMSSerializerでJSON形式で出力しています。このエンティティのプロパティ注釈を設定して、シリアル化グループを介して必要なプロパティを公開しましたが、うまく機能しています。
しかし、エンティティ自体に属さないプロパティをいくつか追加する必要があります。たとえば、pizza
プロパティが必要です。isFresh
これは、何らかのPizzaService::isFresh(Pizza $pizza)
サービスによって決定されます。どうすればいいですか?
- シリアル化プロセスに追加のロジックを挿入する必要がありますか (そうであれば、どのように)?
- 元のエンティティから公開したいプロパティと追加の外部プロパティを含むラッパー エンティティを作成する必要がありますか?
isFresh
シリアライゼーションの前に、元のPizza
エンティティにプロパティを追加してコントローラーに入力する必要がありますか?- エンティティ データとは独立した追加データを返す必要がありますか (たとえば、兄弟の JSON プロパティで)。
つまり、この問題に関するベスト プラクティスは何ですか? 例を挙げていただけますか?ありがとうございました。