2009-12-02 6 views
11

Suivi d'une relation familiale dans les données de base (1 entité parente + 2 types d'enfants, dont un récursif), en essayant de créer un menu déroulant dans Interface Builder qui répertorie les noms des entités parentes que l'utilisateur peut en choisir un à associer en tant que parent de l'entrée en cours d'édition. J'ai les fixations tous ensemble, mais quand il l'exécute produit le texte d'erreur suivant dans le premier emplacement du menu:Faute de relation de données principales

faute de relation (<NSRelationshipDescription: 0x100143ed0>), parent de nom, isOptional 1, isTransient 0, entité famille, parents renamingIdentifier, prédicats de validation ( ), mises en garde ( ), versionHashModifier (null), entité de destination famille, inverseRelationship Subfamilias, mincount 0, maxCount 0 sur 0x10025c850

Je l'ai fait un peu de lecture autour en ligne, et il semble avoir à voir avec le fait que j'ai un rela many-to-one mis en place (comme un parent peut avoir plusieurs enfants, mais je veux limiter chaque enfant à un seul parent). J'ai essayé de trouver un moyen de restructurer le modèle de données pour ne pas mettre une relation de type «un-à-un» sur quelque chose qui devra être appelé de cette manière, mais je suis coincé à essayer de comprendre comment suivre les enfants. Des idées sur les méthodes possibles pour résoudre le problème?

+0

Où voyez-vous l'erreur? À moins que vous ayez un indicateur de débogage spécial, les données de base doivent être silencieuses. –

Répondre

48

Une erreur dans les données de base n'est pas une erreur, cela signifie simplement que ce que vous essayez d'accéder n'a pas encore été extrait de la base de données. Si vous faites quelque chose comme [fetchResults valueForKey:@"name"] il tirera et vous devriez obtenir ce que vous attendez. Cela ne devrait pas poser de problème avec votre modèle relationnel. Par ailleurs, "minCount 0, maxCount 0" semble bizarre. Est-ce vraiment ce que tu veux? minCount de 0 et maxCount de 1 devrait faire plus de sens.

+0

J'ai laissé les champs 'minCount' et' maxCount' vides quand je l'ai créé, comme je voulais le laisser ouvert pour une relation plusieurs-à-un (ne sachant pas combien d'enfants anticiper pour un parent donné). Merci pour votre aide! – Kaji

+3

Donc, pour être clair, quand je vois 'défaut de relation' dans mes journaux, ce n'est pas quelque chose que je dois aborder, car c'est juste dire que cela n'a pas encore été chargé? – Evolve

+2

@Evolve correct. Un défaut est comme un espace réservé, de sorte que les données ne sont chargées que lorsque vous en avez réellement besoin. – theLastNightTrain

Questions connexes