Если ваша модель данных выглядит следующим образом:
Category{
name:string
subCategories<-->>SubCategory.category
}
SubCategory{
name:string
category<<-->Category.subCategories
detailedItems<-->>DetailItem.subCategory
}
DetailedItem{
name:string
subCategory<<-->SubCategory.detailedItems
}
... и вам нужна таблица из DetailedItem
объектов, вы устанавливаете объект выборки на DetailedItem
, а затем все ваши ключевые пути начинаются сDetailItem
сущность.
Если у вас есть только имена объектов Category
и SubCategory
, вы можете создать такой предикат, как:
NSPredicate *p = [NSPredicate predicateWithFormat:@"subCategory.name==%@ AND subCategory.category.name==%@", subCatName,catName];
Обратите внимание, что если у вас есть повторяющиеся значения имен в любой сущностиобъекты, вы получите все соответствующие объекты.
Если у вас есть действительные объекты Category
и SubCategory
, вы можете выполнить более быстрый тест с помощью:
NSPredicate *p = [NSPredicate predicateWithFormat:@"subCategory==%@ AND subCategory.category==%@", aSubCatObj,aCatObj];