Magical Record не работает со старым проектом - PullRequest
0 голосов
/ 30 мая 2018

Я пытаюсь обновить старый проект, который обновлялся с 2012 года. Obj-C и Core Data не являются моей основной компетенцией, поэтому я надеялся использовать Magical Record.Я установил его через CocoaPods и, насколько я могу судить, он установлен.

Проблема: я настроил ее в соответствии с документами, но не могу вернуть объект, используя MR_findAll, но я могу вернуть список всех управляемых объектов, так что, похоже, он работает вроде.

Я закомментировал все старые нативные строки CoreData.

Моя модель называется "PetStore.xcdatamodeld", что не совпадает с моим приложением.

AppDelegate.m

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
  self.window = [[UIWindow alloc] initWithFrame:UIScreen.mainScreen.bounds];


  [MagicalRecord setLoggingLevel:MagicalRecordLoggingLevelDebug];
  [MagicalRecord setupCoreDataStackWithStoreNamed:@"PetStore"];

Тогда в моем контроллере представления это работает и возвращаетсписок управляемых объектов:

NSArray *allEntities = [[NSManagedObjectModel
MR_defaultManagedObjectModel] entities];
for (NSManagedObject *mo in allEntities) {
   NSLog(@"mo %@", mo);
 }

Но я не могу использовать методы MR для выборки объектов.Это не работает:

NSArray *pets = [Pet MR_findAll];
NSLog(@"pet %@", pets.count);

Это просто протоколирует:

 pet (null)

Но я вижу, что у меня есть управляемый объект и сущность с таким именем:

[2430:365392] mo (<NSEntityDescription: 0x604000148da0>) name Pet, managedObjectClassName Pet, renamingIdentifier Pet

Что мне не хватает?Я хожу по кругу.Я посмотрел примеры проектов, и они работают отлично.

Помогите!

TIA.

...