0

ネストされた属性を使用する Rails プロジェクトがあるため、PUT リクエスト中に削除する子オブジェクトを知る必要があります。たとえば、これは私が送信する必要がある要求です:

{ "playlist": { "name": "Playlist Name", "playlist_artists_attributes": [ { "id": 1087, "artist_id": 1208, }, { "id": 1086, "artist_id": 1207, "_destroy": true } ], } }

私は現在、次のようなリクエストを送信するRestKitのデフォルトのオブジェクトシリアライゼーションを使用しています:

{ "playlist": { "name": "Playlist Name", "playlist_artists_attributes": [ { "id": 1087, "artist_id": 1208, } ], } }

ご覧のとおり、プレイリストを編集するときに保持したいアーティストのみを送信します。削除されたアーティストへの _destroy フラグの追加をサポートするように RestKit のオブジェクトのシリアライゼーションを変更する簡単な方法はありますか (削除アーティスト情報を保持する必要があるため、そうではないと思います)、または Rails アプリがこのオブジェクトの PUT 要求を処理する方法を変更する方が簡単でしょうか? ?

4

1 に答える 1

3

playlist_artists_attributes対象のオブジェクトのモデルと を変更できると仮定すると、リストPUT内のオブジェクトに という一時的な属性を追加します。シリアライゼーション マッピングで、 mapを追加し、オブジェクトを追加して、破棄するアイテムにフラグを立てれば完了です。playlist_artists_attributesdestroyDuringUpload@"destroyDuringUpload" : @"_destroy"

于 2013-06-19T16:13:15.870 に答える