Задать вопрос

Как поместить Managed Object из блока в ManagedObjectContext?

Создание managed object из блока крашит приложение. Нужно распарсить json в mo и поместить в контекст

NSManagedObject *tempObject;
    NSManagedObjectContext *temporaryContext = [[NSManagedObjectContext alloc]initWithConcurrencyType:NSPrivateQueueConcurrencyType];
    AppDelegate *delegate = [[UIApplication sharedApplication]delegate];
    [temporaryContext setParentContext:delegate.mainManagedObjectContext];

    for (NSDictionary* objd in objects) {
        tempObject = targetParser(objd, temporaryContext);
        [objectsArray addObject:tempObject];
    }

    mutableResult[@"objects"] = [objectsArray copy];
    
    return [mutableResult copy];
    return mutableResult;


const static id (^routesDeserializer)(NSDictionary*, NSManagedObjectContext*) = ^id (NSDictionary* d, NSManagedObjectContext* context) {

    Route* r = [Route newObjectWithContext:context];
    r.identifier = d[resourceIdKey];
    r.name = d[resourceNameKey];
    r.sequenceDescription = d[routeDescriptionKey];
    r.capacityType = d[routeCapacityTypeKey];
    r.objectHash = d[resourceHashKey];
    r.city = d[resourceCityIdKey];
    r.checkpoint = d[routeCheckpointIdsKey];

    return r;
};


Как правильно(может элегантнее) это можно сделать?
  • Вопрос задан
  • 174 просмотра
Подписаться 1 Оценить 1 комментарий
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы