2012-02-18 12 views
0

私はフォーラムを検索していました。以下のコード部分...オブジェクト属性ではなく特定のオブジェクトを使用したコアデータフェッチ

Bookshop *bookshop = (Bookshop *) nsManagedObjectFromOwner; 

NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] init]; 
NSEntityDescription *entity = [NSEntityDescription entityForName:@"Books" 
         inManagedObjectContext:self.managedObjectContext]; 
[fetchRequest setEntity:entity]; 

NSPredicate *predicate = [NSPredicate predicateWithFormat: 
      @"ANY bookshop.Name == '%@'", 
      bookshop.Name]; 
[fetchRequest setPredicate: predicate]; 

このフェッチでは、述部は特定の名前の書店に属するすべての書籍を検索しています。しかし、私のアプリでは、私のbookshopに相当するものはクライアントであり、クライアントが同じ名前を持つ可能性があります。私がクライアントエンティティ内の一意の識別子を自分で宣言していない限り、述語を設定する最良の方法は何ですか?

答えて

0

ああ...私はこれを考え出しました。同じ質問を持っている人のために...

...あなたはすでに「本屋」オブジェクトを持っている場合、あなたは、単にその「ブック」を参照するには、以下の表記を使用することができます...

bookshop.books 
次のようにこれを使用することができる

...

NSSet *books = bookshop.books; 
NSArray *booksArray = [[NSArray alloc] init]] 
booksArray = [books allObjects]; 

は、あなたが使用できるオブジェクトのすべてのあなたの本を持つNSArrayのを持っています。

こんにちは!

関連する問題