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

前端之家收集整理的这篇文章主要介绍了ios – 在Swift中添加一个许多关系前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我是iOS编程的新手,只需要一点帮助.
我试图使用核心数据,并创建一个简单的插入,其中有一对多关系船.
我的非常简单的核心数据结构看起来像这样

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

Xcode生成Father.swift

  1. class Father: NSManagedObject {
  2.  
  3. @NSManaged var name: String
  4. @NSManaged var fathertochild: NSSet
  5.  
  6. }

Xcode生成Child.swift

  1. class Child: NSManagedObject {
  2.  
  3. @NSManaged var name: String
  4. @NSManaged var child_father: NSManagedObject
  5.  
  6. }

我的添加数据方法

  1. func addData(){
  2. var appDel: AppDelegate = UIApplication.sharedApplication().delegate as AppDelegate
  3. var context: NSManagedObjectContext = appDel.managedObjectContext!
  4.  
  5. var fatherEntity = NSEntityDescription.entityForName("Father",inManagedObjectContext: context)
  6. var newFather = Father(entity: fatherEntity,insertIntoManagedObjectContext: context)
  7. newFather.name = "Daddy"
  8.  
  9.  
  10. var childEntity = NSEntityDescription.entityForName("Child",inManagedObjectContext: context)
  11. var child1 = Child(entity: childEntity,insertIntoManagedObjectContext: context)
  12. child1.name = "child1"
  13. var child2 = Child(entity: childEntity,insertIntoManagedObjectContext: context)
  14. child2.name = "child2"
  15.  
  16. //How to map these 2 childs to father? Need help in code here!
  17.  
  18. context.save(nil)
  19.  
  20. }

解决方法

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

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

猜你在找的iOS相关文章