Можно ли применить несколько предикатов к NSFetchRequest? Было бы лучше вручную проанализировать мои результаты?
Хорошо У меня есть базовое приложение для iPad, которое запрашивает у пользователя 5 критериев поиска/фильтрации. Основываясь на этих данных, мне нужно перейти к моим основным данным db и вытащить любые управляемые объекты, соответствующие этим критериям. Кажется, мне нужно применить более одного предиката к одному и тому же запросу, возможно ли это? Или я могу написать очень длинный фантастический предикат? С несколькими требованиями? Как мне подойти к этому?
Было бы неплохо просто захватить все сущности через запрос выборки, а затем пропустить каждый массив и захватить любые найденные мной объекты, соответствующие моим критериям поиска?
Пожалуйста, посоветуйте!
Ответы
Ответ 1
Да, это возможно. Вы ищете сложные предикаты, и здесь пример с предикатами AND:
NSPredicate *compoundPredicate
= [NSCompoundPredicate andPredicateWithSubpredicates:[NSArray of Predicates]];
Вы также можете использовать notPredicateWithSubpredicates
и orPredicateWithSubpredicates
в зависимости от ваших потребностей.
Ссылка на документацию https://developer.apple.com/documentation/foundation/nscompoundpredicate