ユーザー、アドレスの 2 つのエンティティがあります。各ユーザーが複数の「アドレス」を持つことができる関係を設定しました。コアデータがどのように機能するかはわかりませんが、私の理解では、insertEntityForName を呼び出すたびに、オブジェクトが作成および保存されます。(テーブルの行も)
質問: 次のコードはコア データに重複したアドレスを格納していませんか?
- ユーザーエンティティに挿入すると、アドレスも挿入されます
- アドレスエンティティの挿入を呼び出すと、別のアドレスが作成されます。
私が正しく、これが実際にデータベースに重複を作成する場合、それを防ぐ方法は何ですか?
User *user = [NSEntityDescription insertEntityForName:@"User"
inManagedObjectContext:self.managedObjectContext];
user.firstName = @"first name";
user.lastName = @"last name";
Address *address = [NSEntityDescription insertEntityForName:@"Address"
inManagedObjectContext:self.managedObjectContext];
address.street = @"street";
user.address = address;