ho le seguenti due entità nel mio core Data Model:Core Data - il filtraggio di un rapporto a-molti con predicati
Manufacture {name, ...other attributes}
Product {name, .... other attributes}
Ho installato un uno a molti:
Manufacturer.manufactures <------>> Product.manufacturedBy
I Sto cercando di costruire un predicato per restituire tutti i prodotti appartenenti ai produttori che corrispondono a una stringa di ricerca. Per esempio. se ci sono due produttori, "King Nut" e "Queen Nut", una ricerca su "Nut" dovrebbe restituire tutti i prodotti realizzati da King Nut e Queen Nut.
mio predicato funziona perfettamente quando il mio filtro è sull'entità del prodotto, tuttavia non riesco a ottenere qualsiasi predicato di lavorare durante il filtraggio sull'entità del produttore. Il set di risultati è vuoto.
NSEntityDescription *entity = [NSEntityDescription entityForName:@"Product" inManagedObjectContext:[GBKDB context]];
searchValue = @"nut";
NSString *wildcardString = [NSString stringWithFormat:@"*%@*", searchValue];
Ho provato quanto segue:
predicate = [NSPredicate predicateWithFormat:@"manufacturedBy.name CONTAINS[cd] %@",searchValue];
predicate = [NSPredicate predicateWithFormat:@"manufacturedBy.name like %@",wildcardString];
predicate = [NSPredicate predicateWithFormat:@"manufacturedBy.name matches %@",wildcardString];
predicate = [NSPredicate predicateWithFormat:@"ALL manufacturedBy.name like %@",wildcardString];
predicate = [NSPredicate predicateWithFormat:@"ALL manufacturedBy.name like[cd] %@",@wildcardString];
Che cosa si intende per ' "quando il filtraggio sull'entità del produttore"'? se provi a recuperare 'Product's, l'entità delle tue richieste deve essere' Product' –
Sì. La mia richiesta di entità è per Prodotto: –