CoreData - Filtrer le contenu d'un tableau

K-leb

Membre enregistré
25 Mai 2005
9
0
46
Je ne sais pas si le titre est bon, mais je vais m'expliquer.

CoreData permet de gérer facilement des bases de données. En particulier, on peut définir les tables de données et les liaisons entre elles avec un otuil graphique (ouvrir le fichier *.xcdatamodel).
Une fois les tables préparées, on peut préparer automatiquement une fenêtre de l'IB en appuyant sur la touche "alt" et en glissant une table dans une fenêtre de l'IB. (explications en anglais ici).

Après, on peut bidouiller avec les bindings mais je suis bloqué. Voici la situation (je simplifie):
Je fais un outil pour gérer mes disques. Il y a donc une table qui contient les informations sur les disques (titre, année) et une autre table qui contient les oeuvre des disques (titre, compositeur). Il y a un lien qui lie chaque disque à plusieurs oeuvres.

Maintenant, comme je l'ai expliqué ci-dessus, il est facile de faire un tableau qui affiche tous les disques et de modifier cette liste. De même, il est facile de faire un second tableau qui liste toutes les oeuvres. Automatiquement, on peut dire que telle oeuvre appartient à tel disque...

Mais le problème est là: comment faire en sorte que le tableau des oeuvres n'affiche que les oeuvres du/des disque/s sélectionnés dans la première fenêtre? J'ai essayé de modifier les bindings mais n'ai pas trouvé le bon truc. J'ai regardé des tuto sur les bindings mais n'ai pas trouvé de trucs vraiment lié à CoreData (sauf le tutoriel Cocoa Dev Central)

Si quelqu'un veut bien perdre de son précieux temps pour m'aider, je peux envoyer mes fichiers xcode. Ce serait bien aimable.
 
Sais-tu si je peux rester dans IB et faire cela directement depuis le panneau d'information du NS Array ou dois-je passer par le code?
C'est mon problème: je fais un maximum à l'aide des outils graphiques et après, on ne retrouver plus le code...

Cela dit, j'ai plutôt un NSTabelView, mais je suppose que je peux faire de même.

EDIT: je viens de regarder sur le site d'Apple... effectivement, il y a de fortes chances que ce soit le bon outil. Merci... je vais regardere comment mettre en place cela dès que possible!
 
Je me réponds car j'ai trouvé la réponse sur un tuto vidéo d'Apple: il faut déclarer le ContentSent de notre Controller... faciel et vite fait.