2

ネットワーク経由で JSON サービスからオブジェクトを取得するようにAFIncrementalStoreをセットアップし、そのpersistentStore を SQLite データベースに設定しました。これはすべてうまくいきます。

今私がしたいことは、その SQLite データベースに帯域外 (AFIncrementalStore が指している Web サービス以外のものから) にオブジェクトを追加し、それらの追加を、元のマネージド オブジェクト コンテキストから作成されたフェッチされた結果コントローラーに反映させることです。 .

元の MOC を親として管理オブジェクト コンテキストを作成しました。それにオブジェクトを追加すると、フェッチされた結果コントローラによって表示されます。しかし、AFIncrementalStore の SQLite データベースには保存されません。興味深いことに、AFIncrementalStore はこれらのオブジェクトを JSON サービスに保存しようとしていて、正しいエンドポイントが存在しないと不平を言っているため、これらのオブジェクトを認識しています (これをオーバーライドrequestForInsertedObject:insertedObjectして returnに修正しましnilた)。

私がこれを達成する方法を知っている人はいますか?

4

2 に答える 2

0

オブジェクトをサーバーに POST したくない場合は、メソッドをオーバーライドする必要があります

requestForInsertedObject:insertedObject
requestForUpdatedObject:updatedObject
requestForDeletedObject:deletedObject

次に、コンテキストの save: メソッドを呼び出すときに、オブジェクトをデータベースに保存する必要があります。CRUD操作をオフラインで行っているときに同様のロジックを使用していて、正常に機能しています。

于 2013-11-15T13:40:12.180 に答える