私は、コア データ エンティティ間の関係を機能させるために、この 1 つのタスクに数日間取り組んできました。私はこれを達成しましたが、新しい属性値がその関係を既存のオブジェクトに追加するように変更する必要があります。これは 1 対多のデータベースです。
既存のオブジェクトに関係を追加する方法がわかりません。RoutineDetail に追加される新しいオブジェクトでは、ルーチン Entity に既に存在するオブジェクトとの関係をどのように作成すればよいでしょうか?
新しく追加されたオブジェクトに関係を追加する方法を示すいくつかの例を見てきましたが、 の新しいオブジェクトが にRoutinesDetails
既に存在する値と関係を持つようにする必要がありRoutines
ます。
の値はRoutines
、という文字列に保持されますRoutineText
rout is the NSmangedObject for the entity Routines
routDet is the NSmanagedObject for the entity RoutinesDetails
両方の新しいオブジェクトが作成されたときに関係を追加できるようにするコードをコメントアウトしたままにしておきます。
これは私のプロジェクトでやらなければならない最後のことですが、私は正気ではありません。ここでの修正に永遠に感謝します。これは最高の知識ポータルであるため、アドバイスをいただければ幸いです。ありがとうございました。
NSManagedObjectContext *context = [self managedObjectContext];
// Create a new device
ExcerciseInfo *info = [_fetchedResultsController objectAtIndexPath:indexPath];
//rout = [NSEntityDescription insertNewObjectForEntityForName:@"Routines" inManagedObjectContext:context];
routdet = [NSEntityDescription insertNewObjectForEntityForName:@"RoutinesDetails" inManagedObjectContext:context];
//Add attribute values
//[rout setValue: RoutineText forKey:@"routinename"];
[routdet setValue: info.name forKey:@"image"];
//Create Relationship
[rout addRoutinedetObject:routdet];