2012-05-08 2 views
0

Здесь я получил значение в fetchedObjects. Как обновить значение в массиве?Как обновить данные, доступные в coredata?

NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] init]; 

NSEntityDescription *entity = [NSEntityDescription entityForName:@"Reserve" inManagedObjectContext:self.managedObjectContext]; 
[fetchRequest setEntity:entity]; 


//NSSortDescriptor tells defines how to sort the fetched results 
NSSortDescriptor *sortDescriptor = [[NSSortDescriptor alloc] initWithKey:@"number" ascending:YES]; 
NSArray *sortDescriptors = [[NSArray alloc] initWithObjects:sortDescriptor, nil]; 
[fetchRequest setSortDescriptors:sortDescriptors]; 
NSLog(@"sort count%d",[sortDescriptors count]);   

fetchedResultsController = [[NSFetchedResultsController alloc] initWithFetchRequest:fetchRequest managedObjectContext:self.managedObjectContext sectionNameKeyPath:nil cacheName:@"Root"]; 

NSPredicate *predicate = [NSPredicate predicateWithFormat:@"(number = 100)", self.txtReserve.text]; 

// [fetchRequest setPredicate:predicate]; 
[fetchedResultsController.fetchRequest setPredicate:predicate]; 
self.fetchedObjects = [self.managedObjectContext executeFetchRequest:fetchRequest error:&error];  
NSLog(@"Count of array::::%d",[fetchedObjects count]); 
NSManagedObject *device = [fetchedObjects objectAtIndex:0]; 
NSLog(@"device::::%@",device); 
+0

[managedObjectContext refreshObject: yourcoredataOBject mergeChanges: YES]; который должен обновить ядро. Данные – Bala

+0

Hi Tejas, его непонятно, что вы хотите. Думаю, это дает все, что вам нужно. –

+0

Спасибо за ответ, В приведенном выше коде я должен предоставить устройство в качестве объекта yourcoredataOBject? –

ответ

0

Предлагаю вам прочитать/посмотреть некоторые из многих книг/руководств по основным данным. Вам не хватает базового понимания технологии.

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

[managedObject valueForKey:@"number"]; 

Если вы используете Xcode (или инструмент под названием mogenerator), вы можете иметь подклассы для ваших объектов и может более легко получить доступ к данным через пользовательские методы доступа.