2010-02-22 4 views
0

У меня есть следующая ошибка при попытке вызвать метод save на managedObjectContext.Удаление объекта управляемого объекта, а затем сохранение объектов вызывает ошибку objc_exception_throw

#0 0x939214e6 in objc_exception_throw 
#1 0x01ded83b in -[NSObject doesNotRecognizeSelector:] 
#2 0x01d84676 in ___forwarding___ 
#3 0x01d606c2 in __forwarding_prep_0___ 
#4 0x01c618b6 in -[NSFetchedResultsController(PrivateMethods) _managedObjectContextDidChange:] 
#5 0x0003263a in _nsnote_callback 
#6 0x01d4f005 in _CFXNotificationPostNotification 
#7 0x0002fef0 in -[NSNotificationCenter postNotificationName:object:userInfo:] 
#8 0x01bc217d in -[NSManagedObjectContext(_NSInternalNotificationHandling)  _postObjectsDidChangeNotificationWithUserInfo:] 
#9 0x01c21763 in -[NSManagedObjectContext(_NSInternalChangeProcessing) _createAndPostChangeNotification:withDeletions:withUpdates:withRefreshes:] 
#10 0x01ba65ea in -[NSManagedObjectContext(_NSInternalChangeProcessing) _processRecentChanges:] 
#11 0x01bdc728 in -[NSManagedObjectContext save:] 
  • Я сделал некоторые изменения в OrderItem сущности до прихода в этот следующий код, где я хочу, чтобы отменить любую вставку в OrderItem

    NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] init]; 
    [fetchRequest setEntity:[NSEntityDescription entityForName:@"OrderItem" inManagedObjectContext:managedObjectContext]]; 
    NSArray *deleteItems = [managedObjectContext executeFetchRequest:fetchRequest error:&error]; 
    for (id item in deleteItems) 
        [managedObjectContext deleteObject:item]; 
    
    if (![managedObjectContext save:&error]){ 
        NSLog(@"deleting OrderItem failed: %@, %@", error, [error userInfo]); 
        return FALSE; 
    } 
    

ошибка происходит на линии [managedObjectContext save: & ошибка], не переходя в NSLog, но вызывает исключение.

Что я делаю неправильно? Кто-нибудь покажет мне, пожалуйста, пожалуйста?

ответ

0

У меня есть сложная схема в моей .xcdatamodel, в которой OrderItem имеет две связи с , для параметра DeleteRule будет установлено значение Nullify.

Временное изменение в «Нет действий» не решает ошибку, даже если он вызывает некоторые предупреждения, но лично я думаю, Xcode не должны вести себя таким образом. Он должен заполнить значения & error, чтобы сообщить мне, что у меня проблемы с моей схемой.

Любые мысли об этом?

+1

Если у вас есть предупреждения, вы ДОЛЖНЫ очистить эти предупреждения, потому что вполне возможно, что одно из этих предупреждений вызывает вашу проблему. Любой ответ не может быть действительным с предупреждениями в качестве возможной проблемы. –

+0

привет Маркус, я не понял, как решить эту ошибку. Есть ли у вас какие-то намеки на этот вопрос или вам нужно предоставить дополнительную информацию, чтобы дать ответ? –

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