2

私はちょっとした問題を抱えています....ちょっとイライラします。しかし、それはプログラマーとしての私自身の(不足している)スキルによるものです:)。

基本的に、ブログ投稿をアプリに送信するオンライン レール サービスがあります (レスト キットとコア データで作成)。その後、Restkit はそれらをテーブルビューにマップします。restkit がそれを行ったら、「最後に成功した」リクエストがサーバーに対して行われたときに、アプリでタイムスタンプを作成します。完璧に動作します。

次回更新すると、そのタイムスタンプが Rails アプリに送信され、それ以降に追加されたオブジェクト (つまり、デルタ更新) が (JSON で) 返されます。

この問題については、なんらかの理由で、restkit がこれを受け取ると、コア データの以前の更新からすべてのオブジェクトを削除し、JSON で受け取った「デルタ」/新しいオブジェクトのみを表示します。したがって、restkit は、古いオブジェクトは新しい JSON の一部ではないため、孤立して削除する必要があると考えていると思います。

どうすればこれを防ぐことができますか? 私の問題は、更新要求があるたびにオンラインデータベース全体を送信したくないということです (帯域幅の浪費とちょっと洗練されていないと思います)。coredata db をそのままにして「追加」する方法はありませんか?

同じ質問をする投稿を見たことがありますが、これに対する答えはありません (私は思うのですが、私は時々愚かになることがあります)!

助けてください

よろしく

4

1 に答える 1

1

理解した;

RkManagedObjectLoader.m ファイルを調べて、メソッド deleteCachedObjectsMissingFromResult を探します。

このメソッドを無効にすると、コア データが削除されるのを防ぐことができます。

お役に立てれば

于 2012-05-25T11:34:44.183 に答える