Core Data で作業するときはいつでも、プログラムを実行して、想定どおりのことを実行できます。しかし、データを保存しようとすると、次のようなエラーが発生することがよくあります。
キャッチされない例外 'NSInternalInconsistencyException' が原因でアプリを終了しています。理由: '+entityForName: エンティティ名 'Feedings' の NSManagedObjectModel が見つかりませんでした''
そして、私が知る限り、理由はありません。
-(IBAction)saveData:(id)sender
{
Feedings *newFeed = [NSEntityDescription insertNewObjectForEntityForName:@"Feedings" inManagedObjectContext:self.managedObjectContext];
newFeed.time01 = time01TxtFld.text;
newFeed.time02 = time02TxtFld.text;
newFeed.time03 = time03TxtFld.text;
newFeed.time04 = time04TxtFld.text;
newFeed.time05 = time05TxtFld.text;
newFeed.time06 = time06TxtFld.text;
newFeed.time07 = time07TxtFld.text;
newFeed.feed01 = mls01TxtFld.text;
newFeed.feed02 = mls02TxtFld.text;
newFeed.feed03 = mls03TxtFld.text;
newFeed.feed04 = mls04TxtFld.text;
newFeed.feed05 = mls05TxtFld.text;
newFeed.feed06 = mls06TxtFld.text;
newFeed.feed07 = mls07TxtFld.text;
[self.managedObjectContext save:nil]; // write to database
[self.delegate theSaveButtonOnTheAddAppVCWasTapped:self];
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Feedings" message:@"A new feeding record has been added." delegate:self cancelButtonTitle:nil otherButtonTitles:@"OK", nil];
[alert show];
}
これは、データベースに情報を追加するためのコードであり、Xcode にはエラーがありません。なぜ、アプリを適切に動作させるのが難しいのでしょうか??
ブレークポイントのイメージ
この行を ViewDidLoad メソッドに追加しました:
NSLog(@"Entities : %@",[[self.managedObjectContext.persistentStoreCoordinator.managedObjectModel entities] valueForKey:@"time01"]);
これを返します:
2012-08-25 13:33:43.572 給餌[735:fb03] エンティティ: (null)
クラッシュの適切な理由はどれですか