これは、新しいオブジェクトを Raza エンティティに挿入するために使用しているコードです。特別なことは何もありません。アプリ全体でこのデリゲート メソッドと構文を使用しましたが、何らかの理由で、この特定のエンティティでは実行できません。
-(void)guardarRaza:(NSString *)nombre guardar:(BOOL)guardar{
if (guardar) {
Raza *raza = [NSEntityDescription insertNewObjectForEntityForName:@"Raza"
inManagedObjectContext:self.managedObjectContext];
raza.nombre = nombre;
NSError *error;
if (![self.managedObjectContext save:&error]) {
NSLog(@"Unresolved error %@, %@", error, [error userInfo]);
abort();
}
}
[self dismissModalViewControllerAnimated:YES];
}
問題は sqlite に起因する可能性があります。これは、1 つのバージョンを使用して開始バージョンを事前設定しているためです。「Core Data Tutorial: How To Preload/Import Existing Data」というタイトルの raywenderlich メソッドに従いました。
他のエンティティでは実際にスムーズに動作しますが、その特定のエンティティを挿入して保存すると、CoreData: error: (19) PRIMARY KEY must be unique でクラッシュします。私はsqliteをチェックアウトし、新しい行を手動で挿入および削除しましたが、うまくいきました。
誰かが同じ問題を抱えているか、それを修正する方法を知っていますか。前もって感謝します