2013-08-21 4 views
0

У меня проблема с Magical Record. У меня есть массив элементов, которые являются объектами ProviderSearchResult, которые мне нужно импортировать. Когда я импортировать их я получаю сообщение EXC_BAD_ACCESS дляПроблема импорта Magical Record с AFNetworking

#24 0x00008770 in __67+[NSManagedObject(MagicalRecord) MR_executeFetchRequest:inContext:]_block_invoke at 
MagicalRecord/Categories/NSManagedObject/NSManagedObject+MagicalRecord.m:33 

Я искал высоко и низко, как получить это решить, но ничего не работает. Мой код:

ApiClient *client = [ApiClient sharedInstance]; 

NSDictionary *dataDictionary = [[NSDictionary alloc] initWithObjects:@[searchString] forKeys:@[@"companyName"]]; 
NSError *error; 
NSData *jsonData = [NSJSONSerialization dataWithJSONObject:dataDictionary options:0 error:&error]; 
NSString *jsonString = [[NSString alloc] initWithData:jsonData encoding:NSUTF8StringEncoding]; 

NSString *token = [[[UserManager sharedInstance] getAuthenticationObject] authenticationToken]; 

NSMutableDictionary *params = [[NSMutableDictionary alloc] initWithObjects:@[@"json", token, jsonString ] 
                    forKeys:@[@"callType", @"token", @"data"]]; 

[[UIApplication sharedApplication] setNetworkActivityIndicatorVisible:YES]; 
[client getPath:@"GetClientInterfaces/" parameters:params success:^(AFHTTPRequestOperation *operation, id responseObject) { 
    [[UIApplication sharedApplication] setNetworkActivityIndicatorVisible:NO]; 
    NSLog(@"Operation: %@", operation); 
    NSLog(@"Response: %@", responseObject); 
    NSLog(@"Type: %@", [[responseObject valueForKeyPath:@"details.items"] class]); 
    NSLog(@"First: %@", [[responseObject valueForKeyPath:@"details.items"] firstObject]); 
    NSArray *providerResults = [responseObject valueForKeyPath:@"details.items"]; 
    NSLog(@"Results: %@", providerResults); 
    __block NSArray *array; 
    [MagicalRecord saveWithBlock:^(NSManagedObjectContext *localContext) { 
     array = [ProviderSearchResults MR_importFromArray:providerResults inContext:localContext]; 
    }]; 
    NSLog(@"Array: %@", array); 
} failure:^(AFHTTPRequestOperation *operation, NSError *error) { 
    [[UIApplication sharedApplication] setNetworkActivityIndicatorVisible:NO]; 
    NSLog(@"Operation: %@", operation); 
    NSLog(@"Shit: %@", error); 
}]; 

Может ли кто-нибудь увидеть что-нибудь неправильное, что может привести к тому, что это не сработает?

ответ

0

После продолжительного разговора с разработчиками он дошел до первичного ключа, который не назначается сущности.

Мне пришлось выбрать объект в Xcode, затем в разделе userInfo я добавил ключ/значение 'relatedByAttribute':'clientMasterId'.

clientMasterId будет моим основным ключом в соответствии с MR

Смежные вопросы