私はコアデータにかなり慣れていないため、問題が発生しています。現在、私のアプリは非常にシンプルです。ユーザー名と電子メールを含むユーザーのリストがあります。アプリが起動し、コア データ NSFetchedRequest を介してローカル データベースからすべてのユーザーを取得します。アプリは現在、エラーなしで作成、読み取り、および削除できます。コアデータに関するアップルのチュートリアルに従いました。
私が抱えている問題は、編集したユーザーを保存することです。ユーザーをクリックすると、その特定のユーザーのユーザー名と電子メールを編集できる編集ビュー コントローラーが表示されます。ユーザーを更新して保存すると、アプリがクラッシュします。エラーは次のとおりです。
2012-04-09 17:47:09.757 SEA[7032:fb03] CoreData: エラー: 重大なアプリケーション エラーです。コア データの変更処理中に例外がキャッチされました。これは通常、NSManagedObjectContextObjectsDidChangeNotification のオブザーバー内のバグです。[ valueForUndefinedKey:]: エンティティ User は、キー「timeStamp」のキー値コーディングに準拠していません。with userInfo { NSTargetObjectUserInfoKey = " (エンティティ: ユーザー; id: 0x880ec10 ; データ: {\n email = \"sampleUser@gmail.com\";\n ユーザー名 = sampleUser1;\n})"; NSUnknownUserInfoKey = タイムスタンプ; } 2012-04-09 17:47:09.760 SEA[7032:fb03] *キャッチされない例外 'NSUnknownKeyException' によりアプリを終了します。タイムスタンプ」。
エラーの外観から、属性を削除したにもかかわらず、属性 timeStamp がまだ表示されています。ユーザー エンティティは次のようになります。
#import <Foundation/Foundation.h>
#import <CoreData/CoreData.h>
@interface User : NSManagedObject
@property (nonatomic, retain) NSString * username;
@property (nonatomic, retain) NSString * email;
@end
誰かが私を助けてくれれば、本当に感謝しています。