题
我是 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)
}
解决方案
您所要做的就是设置 Child 到 Father 的关系:
child1.child_father = newFather
child2.child_father = newFather
这会自动更新(逆)关系 newFather
.
不隶属于 StackOverflow