У меня есть две Entities, которые я назову A и B. Они настроены с отношениями To-Many в обоих направлениях, поэтому A.myBs и B.myAs являются NSSet.
Вот моя странная проблема.
Когда я добавляю B к моей сущности A, я делаю это, используя mutableSetValueForKey, как это:
NSMutableSet *myBSet = [myA mutableSetValueForKey:@"myBs"];
[myBSet addObject:theBtoAdd];
Это добавляет theBtoAdd к объекту A, но не добавляет обратную связь. Сохранение контекста Core Data не вызывает никаких ошибок, но мой объект A не имеет обратного B-набора. Если я выхожу из приложения, даже частичное соотношение не сохраняется.
Здесь странная часть... если я просто переключаю свой код и делаю наоборот (есть причины, по которым это сложнее сделать для моего конкретного приложения) - добавьте A в B вместо добавления B в следующим образом:
NSMutableSet *myASet = [myB mutableSetValueForKey:@"myAs"];
[myASet addObject:theAtoAdd];
Это прекрасно работает. Кстати, у меня есть много других ко многим отношениям, которые работают. Только этого нет.
Пара других вещей: 1) Моя основная модель объектов данных выглядит неплохо, но это первый новый объект, который я добавил в Xcode 4 2) Я проверил, перепроверялся и ослепнул, глядя на мои пользовательские NSManagedObjects, но они выглядят прекрасно объявленными динамическими, NSSet, не конфликтующими сеттерами/геттерами и т.д.
Приветствуются любые предложения по поддержке или отладке. Спасибо!