Cocoa 添加到多对多/多对多核心数据关系

Cocoa 添加到多对多/多对多核心数据关系,cocoa,core-data,tags,nsarraycontroller,Cocoa,Core Data,Tags,Nsarraycontroller,我有两个实体,由多对多关系关联 Thing<<->>Tag ? 标签系统是否有一些最佳实践 我发现(在最新版本的Xcode中)在core data Modeler中选择实体很有帮助,然后转到文件菜单,选择新建文件->核心数据->NSManagedObject子类。它会自动创建一个类,该类包含必要的成员以及在toMany关系中添加对象的方法 如果您已经这样做了,那么您只需要获得要向其添加标记的对象实例,并且您可以调用为您声明的方法。从生成的头文件中可以明显看出该方法的名称

我有两个实体,由多对多关系关联

Thing<<->>Tag
?

  • 标签系统是否有一些最佳实践
  • 我发现(在最新版本的Xcode中)在core data Modeler中选择实体很有帮助,然后转到文件菜单,选择新建文件->核心数据->NSManagedObject子类。它会自动创建一个类,该类包含必要的成员以及在toMany关系中添加对象的方法


    如果您已经这样做了,那么您只需要获得要向其添加
    标记的
    对象
    实例,并且您可以调用为您声明的方法。从生成的头文件中可以明显看出该方法的名称。

    非常感谢。这是否与使用带有ist add:method的NSArrayController相同?将对象添加到NSArrayController只会告诉NSArrayController有关它的信息。如果希望添加的对象在UI上可见,则需要这样做。另外,您需要将
    标记
    添加到其
    对象
    ,将
    对象
    添加到
    标记
    。这就是自动生成的add方法的用武之地。
    NSMutableSet *tags = [aThing mutableSetValueForKey:@"tags"];
    [tags addObject:existingTag];