2012-05-08 7 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

こんにちはTejas、あなたが望むものは明確ではありません。私はそれがあなたが必要とするすべてを与えていると思います。 –

+0

返信ありがとう、上記のコードで私はyourcoredataObjectとしてデバイスを与える必要がありますか? –

答えて

0

コアデータに関する多くの書籍/チュートリアルを読んだり、ご覧になることをお勧めします。あなたは技術の非常に基本的な理解が不足しています。

最初に、受け取ったオブジェクトはデータベース内のオブジェクトを表しているため、データを取得するにはエンティティの説明を知る必要があります。あなたはXcodeの(またはmogeneratorと呼ばれるツール)を使用している場合たとえば、「予約」エンティティの「数」の属性を取得するための最も基本的な方法は...

[managedObject valueForKey:@"number"]; 

になりますが、サブクラスがあなたのために生成することができカスタムアクセサメソッドを使用してデータに簡単にアクセスすることができます。

関連する問題