2

私は15日以来、RestKitに苦労しています。リモートからデータを受信したら、属性をローカルで編集して保存できるようにしたいと思います。

私はいくつかの異なるアプローチで試しましたが、どれも機能していないようです。

 user.attribute = @"new valuel";
[[[RKObjectManager sharedManager].objectStore managedObjectContextForCurrentThread] save:&error];

        if(error)       
             NSLog(@"Error saving %@", error);

2 番目のアプローチは、値をインスタンス自体に割り当てて保存することでした。

user.attribute = @"new valuel";
[user.managedObjectContext save:&error ];
NSlog(@"%@", error)

別の試み、

[[RKObjectManager sharedManager].objectStore save:&error];

コンテキストへのポインターを取得できないようです。ポインターを取得する方法、またはオブジェクトを保存する方法、または完全に不可能な方法はありますか? これらはデータベースに保存されず、エラーも発生しません。ここで何が問題ですか?

4

1 に答える 1

4

私も同じ問題を抱えてる。私もあなたの手順を試していて、Firefoxのプラグインでデータベースを開いたところ、dbが更新されていないことを確認できました。

最終的な解決策にたどり着いたらお知らせします...

アップデート:

メソッド refreshObject:mergeChanges を追加して、ようやくコードが機能するようになりました。最後に私のコードは次のようなものです:

   // Make changes in managedObjectYouWantToSave 
   [managedObjectYouWantToSave.managedObjectContext refreshObject:managedObjectYouWantToSave mergeChanges:YES];
   [managedObjectYouWantToSave.managedObjectContext save:&error];
于 2012-07-24T08:40:11.517 に答える