Mi piacerebbe essere in grado di cercare il rapporto di un'entità utilizzando una clausola IN. Ho la seguente configurazione: Core Data NSPredicate recuperare il rapporto con un'entità nella clausola
Vorrei inviare più di una serie di soprannomi e trovare tutte le persone associate a tali soprannomi.
//array of names to find
let nameArray: [String] = ["Tom", "Tommy", "Thomas"]
// find all Persons who have a nickname associated with that person
let predicate = NSPredicate(format: "ANY Person.nickName in %@",nameArray)
var fetch = NSFetchRequest(entityName: "Person")
fetch.predicate = predicate
var fetchError : NSError? = nil
// executes fetch
let results = context?.executeFetchRequest(fetch, error: &fetchError)
Ma quando si esegue il codice, ottengo il seguente errore:
'NSInvalidArgumentException', la ragione: 'la generazione SQL non implementato per il predicato: (QUALSIASI Person.nickName IN { "Tom", " Tommy", "Thomas"})'
che cosa sto facendo male qui? Se rimuovo la ricerca dei predicati, restituisce tutti i risultati ok, ma non appena aggiungo questa riga, tutto si interrompe.
grazie! che ha risolto il mio problema – slidmac07
Prego! CoreData può essere difficile, non mollare mai! :) – Para
@Para puoi dirmi l'alternativa C oggettiva per questo codice? – SARATH