Основная выборка данных с использованием определенного объекта, а не атрибута объекта - PullRequest
0 голосов
/ 18 февраля 2012

Я искал на форуме и нашел какой-то код в вопросе другого пользователя, что составляет 99% от того, что мне нужно. Фрагмент кода ниже ...

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];

В этой выборке предикат ищет все книги, принадлежащие книжному магазину с определенным именем. В моем приложении, однако, мой эквивалент книжного магазина - клиенты, и вполне возможно, что клиенты могут иметь одинаковые имена. Каков наилучший способ задания предиката, который я сам не объявил ни в одном уникальном идентификаторе в клиентской сущности?

1 Ответ

0 голосов
/ 19 февраля 2012

Ааа ... Я понял это.Для тех, у кого такой же вопрос ...

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

bookshop.books

Так что это можно использовать следующим образом ...

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

Затем у вас есть NSArray со всеми вашими объектами книг, которые вы можете использовать.

Эй, presto !!

...