2011-09-30 2 views
1

J'ai des problèmes avec Core Data, dans le cadre d'une relation un à plusieurs.Relation un-à-plusieurs sur les données de base

J'ai deux entités, disons Class et les élèves. Une classe peut avoir beaucoup d'élèves, mais un élève appartient à une seule classe.

Je peux lister les éléments de classe et les placer dans un objet UITableView. Je peux également lister les éléments élèves et les placer dans un objet UITableView.

Mon problème est: pour une classe donnée dis classX, comment puis-je obtenir les élèves correspondants.

C'est la première fois que j'utilise "relation" avec Core Data. J'ai essayé de trouver un exemple de code sur le net mais sans succès.

Merci pour tout conseil utile.

Répondre

1

Si votre relation est nommé « élèves » et vous avez un objet géré pour la classe appelée « myClass », puis:

NSSet *pupilsForClass = [myClass valueForKey:@"pupils"]; 
for (NSManagedObject *pupil in pupilsForClass) { 
    // Do something for each pupil 
} 

Si vous avez des sous-classes NSManagedObject pour les entités élèves et la classe, vous pouvez également Accédez plus directement aux propriétés à l'aide des méthodes setter/getter générées dynamiquement par les données de base.

Questions connexes