2010-10-17 34 views
3

J'ai une base de données de base qui a (pour l'instant) 2 entités Product et CompetingProduct, la relation CompetingProduct est définie sur-many avec des produits.Données de base Erreur de relation (chargement paresseux). Les relations disparaissent

Je crée 2 produits simulacres et 2 simulacres de produits concurrents et de définir la relation entre eux .. tout fonctionne fichiers .. Enregistré dans la base de données, aussi NSlog, "po" eux .. tout est bon.

maintenant .. quand je redémarrer l'application ou je demande tous les objets de produits concurrents de type d'un point de vue différent .. Je reçois Relation la faute pour la relation entre les produits et les produits Competing (bien que je Je les connais sur le chargement paresseux du noyau de données mais ce n'est pas le cas parce que quand j'essaie [NSSet allObjects] (aussi po, nslog - rien) il retourne 0 objets qui devraient normalement obtenir des objets.

Note: Immédiatement après que j'appelle saveChanges - toutes choses

Absolument TOUT aide sera grandement apprécié et gagner vous mon respect et bien sûr quelques de bières

Merci!

Répondre

3

Si je comprends correctement la description du problème, cela peut être dû au fait que la relation réciproque n'a pas été définie entre CompetingProduct et Product.

Si la relation est:

Product-->CompetingProduct 

... et non:

Product<-->CompetingProduct 

... alors vous serez en mesure de trouver CompetingProducts commençant par un produit mais vous serez en mesure de trouver un produit en commençant par un produit concurrent.

Si ce n'est pas le problème, il semble que vous pouvez avoir plusieurs contexte et ne sont pas sauver l'un des changements sont apportés.

+1

yup. il semble que la relation inverse était le problème. Merci!! – Zapacila

+0

comment puis-je définir votre réponse comme réponse? – Zapacila

+0

Je crois que vous cliquez sur la coche en plus de cette réponse - elle devient verte et cette réponse est maintenant marquée comme la réponse approuvée. –