ios – 在Swift中添加一个许多关系

我是iOS编程的新手,只需要一点帮助.
我试图使用核心数据,并创建一个简单的插入,其中有一对多关系船.
我的非常简单的核心数据结构看起来像这样

现在在代码中我也创建了NSManagedObject子类,并能够分别创建这个对象.所有我需要帮助的是我如何创建关系.我的代码是

Xcode生成Father.swift

class Father: NSManagedObject {

    @NSManaged var name: String
    @NSManaged var fatherToChild: NSSet

}

Xcode生成Child.swift

class Child: NSManagedObject {

    @NSManaged var name: String
    @NSManaged var child_father: NSManagedObject

}

我的添加数据方法:

func addData(){
   var appDel: AppDelegate = UIApplication.sharedApplication().delegate as AppDelegate
   var context: NSManagedObjectContext = appDel.managedObjectContext!

    var fatherEntity = NSEntityDescription.entityForName("Father",inManagedObjectContext: context)
    var newFather = Father(entity: fatherEntity,insertIntoManagedObjectContext: context)
    newFather.name = "Daddy"


    var childEntity = NSEntityDescription.entityForName("Child",inManagedObjectContext: context)
    var child1 = Child(entity: childEntity,insertIntoManagedObjectContext: context)
    child1.name = "child1"
    var child2 = Child(entity: childEntity,insertIntoManagedObjectContext: context)
    child2.name = "child2"

    //How to map these 2 childs to father? Need help in code here!

    context.save(nil)

}

解决方法

所有你需要做的是设置从孩子到父亲的关系:
child1.child_father = newFather
child2.child_father = newFather

这将自动更新newFather中的(反)关系.

相关文章

当我们远离最新的 iOS 16 更新版本时,我们听到了困扰 Apple...
欧版/美版 特别说一下,美版选错了 可能会永久丧失4G,不过只...
一般在接外包的时候, 通常第三方需要安装你的app进行测...
前言为了让更多的人永远记住12月13日,各大厂都在这一天将应...