У меня есть NSManagedObject ElementA с несколькими атрибутами, которые должны существовать в ElementB через отношения родитель-потомок.При установке ElementA в качестве родительского объекта для ElementB, NSPersistentStoreCoordinator завершается ошибкой.ManagedObjectModel правильно создается, и сущности / классы работают отдельно друг от друга.Единственная разница между сбоем приложения и компиляцией - это родительские и дочерние отношения.Ни один из атрибутов ни одной из сущностей не перекрывается.
У меня еще недостаточно представителей, поэтому изображения находятся по следующим ссылкам: Модель ElementA , Модель ElementB .
Что касается устранения неполадок, я пробовал все следующее:
- С использованием и без реализации пользовательских классов.
- Установка ElementA как абстрактного (однакоМне нужно, чтобы оно не было абстрактным)
- Удаление, а затем добавление атрибутов по одному (включая очистку всех атрибутов обоих объектов)
- Сброс Xcode (очистить), симулятор (сбросить)все) и перезапускаю мой компьютер.
Я прочитал документы Apple (Руководство по программированию базовых данных: модели управляемых объектов), и все, похоже, соответствует их рекомендациям по наследованию объектов.
Эта строка терпит неудачу:
__persistentStoreCoordinator = [[NSPersistentStoreCoordinator alloc] initWithManagedObjectModel:[self managedObjectModel]];
Чего мне здесь не хватает?Это должно быть очевидно, так как это не должно быть так сложно.Любая помощь приветствуется!
Редактировать для @ Rog's Comment
Приложение завершается ошибкой, как только при запуске запускается доступ к базовой модели данных.Новые изображения выше показывают, что я пытаюсь установить родительский объект ElementB с помощью редактора моделей.Вот сообщение об ошибке, которое я получаю:
uncaught exception 'NSInternalInconsistencyException', reason: 'Bad model. For entity 'ElementA' subentity 'ElementB (0x785d790)' is not registered in NSManagedModelModel. Model has a reference to ElementB (0x785e320)'