2つのテーブルがあります。課題と質問。両方のテーブルには、あまりにも多くの関係があります。質問への割り当てからの削除ルールは拒否され、質問から割り当てへの削除は無効になります。
課題が削除されたら、その課題に関連するすべての質問を削除して、他の課題との参照が残っている質問を残します。これが、DENY削除ルールが割り当てから質問に設定されている理由です。
課題を削除する前に、以下に示すように、課題の参照を課題から削除していることを確認してください。
Assignment *assignment = assignment to be deleted;
for (SMQuestion *question in [assignment.questions allObjects])
{
//NSLog(@"The Question ID is %@",question.questionId);
//[question removeAssignmentsObject:assignment];
[assignment removeQuestionsObject:question];
//question.assignments = nil;
}
[[[CoreDataManager sharedObject] managedObjectContext] deleteObject:assignment];
[[[CoreDataManager sharedObject] managedObjectContext] save:&error];
ただし、割り当てを削除した後、データベースから質問が削除されることはありません。ここで私が間違っていることはありますか?