プロジェクト用に新しい API を設計しており、ネストされた子を持つオブジェクトを json として返したいと考えています。そのために、RABL を使用することにしました。
オブジェクトが有効かどうか、そうでない場合は、正しく保存するために欠落しているフィールドをクライアント側で理解できるようにしたいと考えています。
私が考えた設計では、オプションのハッシュの下にいくつかのフィールドをオプションとして含める必要があり、残りは必須です。必要なフィールドは、json のルートのすぐ下に表示されます。したがって、説明しようとする出力は次のようになります。
{
"name": "John",
"last_name": "Doe",
"optional": {
"address": "Beverly Hills 90210",
"phones":[{"number":"123456","name":"work"}, {"number":"654321","name":"mobile"}]
}
}
上記の出力例は、必須フィールドの name と last name と、必須ではない住所と電話番号 (beels_to-has_many 関係でオブジェクトに関連付けられている) を示しています。name、last_name、および address は、ユーザーの DB フィールドです。
RABL で遊んで、私はこれまでのところ、この種の構造を作成することができませんでした。
助言がありますか?すべてのモデルにこれを実装する DRY の方法を探しています。