Массив фильтров ManagedObject FetchResults в Swift - PullRequest
0 голосов
/ 20 января 2019

В target-C вы можете отфильтровать массив полученных результатов из основных данных следующим образом:

NSString *brand = @"honda";
NSPredicate *predicate = [NSPredicate predicateWithFormat:
        @"brand like %@", brand]; 
NSArray *filteredArray = [results filteredArrayUsingPredicate:predicate];

Я пытаюсь сделать что-то подобное в Swift, но получаю различные ошибки:

let myResults = try context.fetch(fetchRequest)
let idPredicate = NSPredicate(format: "id >= 1000")
let idArray = (myResults as Array).filtered(using: idPredicate)

Я пробовал кастовать различными способами, такими как myResults as Sales, но все еще получаю множество ошибок:

Редактировать:

В вышеприведенной версии,Я получаю серию предложений по исправлению, начиная с замены «использование» на «», которые приводят к большему количеству ошибок, если я принимаю какие-либо предложения.Когда вместо Array я пишу как Sales или альтернативно пишу idArray: Sales, я получаю «Невозможно принудительно привести Array к Sales»

Каков правильный синтаксис для этого в Swift 3 или 4?

...