2013-01-25 2 views
0

Я использую проект найти на GitHub, что позволяет мне использовать NSFetchedResultsController и UICollectionView, проект thisИспользование UICollectionView и NSFetchedResultsController

но при сохранении нового объекта, как таким образом:

NSManagedObject *doc = [NSEntityDescription insertNewObjectForEntityForName:@"Document" inManagedObjectContext:self.managedObjectContext]; 
        [doc setValue:[title contents] forKey:@"docName"]; 
[doc setValue:element valueforKey:@"Element"] 

[self saveContext]; 

я получаю эту ошибку:

CoreData: error: Serious application error. Exception was caught during Core Data change processing. This is usually a bug within an observer of NSManagedObjectContextObjectsDidChangeNotification. Can't perform collection evaluate with non-collection object. with userInfo (null) 

Я попытался удалить этот проект, и сохранить работы, так что я думаю, что проблема в том Proj ect, любая помощь?

ответ

0

Я рекомендовал бы экспортировать подкласс NSManagedObject и объявить объект как следующим образом:

// At top of the file: 
#import "Document.h" 

// In your Method: 
Document *doc = (Document *)[NSEntityDescription insertNewObjectForEntityForName:@"Document" inManagedObjectContext:self.managedObjectContext]; 
doc.docName = title.contents; 

NSError *error = nil; 
[self.managedObjectContext save:&error]; 

if (error != nil) { 
    NSLog(@"Oh no! Something terrible happened! Error: %@", error); 
} 
else { 
    NSLog(@"Saved! Yay!"); 
} 
+0

не работает, я уже пробовал этот метод, я должен открыть новый вопрос с полным кодом: http://stackoverflow.com/questions/14519172/use-uicollectionview-and-nsfetchedresultscontroller-doesnt-save – Piero

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