Zoals ik in de opmerkingen over de vraag suggereerde, wilt u misschien niet datamodel wijzigen, maar eerder een brug slaan tussen uw model en de bibliotheek die geen veel-op-veel relaties begrijpt.
De jointabel die u wilt maken, is eigenlijk al aanwezig, u hoeft alleen maar een andere manier te vinden om uw gegevens aan deze bibliotheek te presenteren.
Of dit zou kunnen werken, hangt af van hoe deze bibliotheek naar uw model kijkt. Er zijn verschillende manieren om de eigenschappen van uw entiteiten te doorzoeken, of het kan zijn dat u degene bent die opgeeft welke eigenschappen/relaties moeten worden gekopieerd.
Het is moeilijk om een echt antwoord te geven, zonder enige details over dit alles, maar het algemene idee is dat:
U hebt enkele beheerde objecten met kopteksten die er als volgt uitzien:
// Recipe.h
@interface Recipe : NSManagedObject
@property (nonatomic,retain) NSSet *ingredients;
@end
en nu voeg je een aantal extra methoden toe aan dit object, gebruikmakend van een categorie:
// Recipe+fakejoin.h
@interface Recipe (fakejoin)
-(NSSet*)recipeIngredients;
@end
en een implementatie in Recept + fakejoin.m
van deze methode die een NSSet
met RecipeIngredients
-objecten retourneert.
Maar zoals ik al zei, het is een open vraag of je met deze bibliotheek op deze manier kunt spelen zonder dingen te verbreken. Als dit allemaal nieuw voor je klinkt, kun je beter een andere oplossing vinden ...