J'ai donc typique 1: relation M:de base de données, filtrage des entités enfants en jeu de résultats
Car can have many Models
Je veux tous les objets de voiture et seuls les noms de modèles qui commencent par « A ».
J'ai essayé une sous-requête:
NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] init];
NSEntityDescription *entity = [NSEntityDescription entityForName:@"Car" inManagedObjectContext:_context];
[fetchRequest setEntity:entity];
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"SUBQUERY(models, $model, $model.name BEGINSWITH 'A')[email protected] > 0"];
[fetchRequest setPredicate:predicate];
Ce serait essentiellement un retour Car
tant qu'il a un modèle qui commence par 'A'. C'est très bien, mais pour tous les Car
s retour, il retourne aussi tous les Model
s, et je veux que ceux qui commencent par « A »
Mais il semble aussi longtemps que je fonctionne sur l'entité de niveau supérieur (voiture), alors cette sous-requête filtre uniquement Cars
et ne filtre pas du tout Models
. Ce que je suis en train de faire est de filtrer Models
dans une boucle interne (en utilisant un autre NSPredicate
), mais je préfère faire ce filtrage du côté SQL.
Des idées?
Ouais, c'est quelque chose que je suis arrivé à. Travailler d'abord via l'entrée Modèles, puis récupérer les voitures. J'aime ta méthode KVC ici. Merci! – Maverick