自定义setter为Core Data关系强制反向,互惠关系

时间:2011-04-26 19:29:26

标签: iphone ios core-data entity-relationship nsmanagedobject

我想为NSManagedObject核心数据一对多关系(Object.related)创建一个自定义setter,这样当对象A添加到B.related时,B会自动添加到A.related,如果A从B.related中删除,B从A.related中自动删除。我以前能够为基本属性(例如NSString和NSNumber属性)创建自定义setter,但这让我有些头疼。调用我的函数-(void)setRelated:(NSSet*)newSet时,似乎已经使用newSet列表设置了Self.related属性!这里的最佳做法是什么?我还调查过使用didChangeValueForKey:(NSString *)inKey withSetMutation:(NSKeyValueSetMutationKind)inMutationKind usingObjects:(NSSet *)inObjects查看此属性但未能使其正常工作。

1 个答案:

答案 0 :(得分:1)

关系的反转由CoreData管理(如果您在模型中设置它)。如果你试图手动完成,你最终会遇到各种各样的麻烦。

逆是所有关系的属性,如果未在建模工具中设置,则应该收到警告。