「保存に失敗しました」というエラーが表示されます。いいえ。1620、次のことを試すと:
NSManagedObjectContext *context = [self managedObjectContext];
CustomObject *objToInsert = [NSEntityDescription insertNewObjectForEntityForName:@"CustomObject" inManagedObjectContext:context];
objToInsert.variable1 = [NSNumber numberWithFloat:10.0];
objToInsert.variable2 = [NSDate date];
objToInsert.variable3 = [NSNumber numberWithInt:1];
NSError *error;
if (![context save:&error]) {
NSLog(@"failed to save with error = %@", [error localizedDescription]);
}
この同じロジックは、他の NSManagedObject サブクラス オブジェクトを managedObjectContext に保存するときにも問題なく機能します。1620 エラーは「数値が小さすぎる」検証エラーとしてリストされていますが、入力している数値に問題がないことは明らかです。3 つの変数は、私のデータ モデルでは Float、Date、および Integer 16 として定義されていますが、それが関連しているかどうかはわかりません。
コア データ スタックはすべて存在し、正しく、前述のとおり、他の挿入ロジックとうまく連携します。ここで何か不足していますか?
編集: エラー出力から、Core Data が完全に異なる NSManagedObject サブクラスを保存しようとしていることが判明しました。これはなぜでしょうか?