如何设置关系和获取数据

时间:2015-02-05 03:20:13

标签: swift core-data ios8 nsfetchrequest

我正在尝试制作一个购物清单应用程序。我的数据模型中有2个实体:List和Item

我想制作多个可以包含多个项目的列表。

我创建了关系(和反向)List包含Item。但是当我创建和项目时,我不知道如何将newItem_A设置为List_A并随后获取包含在List_A中的所有项目

1 个答案:

答案 0 :(得分:0)

感谢Bluehound的评论,我能够弄清楚!相当简单的解决方案,归结为我的无知和Xcode有很多窗口。

为了获得我需要的一对多关系,我必须将关系类型更改为" to many"在List实体上。它是右侧数据模型检查器中的一个选项。

通过执行此操作,它为List类提供了NSSet的items变量,而不是之前创建的NSManagedObject。

我的列表类:

@objc(List)
class List: NSManagedObject {

  @NSManaged var name: String
  @NSManaged var items: NSSet

}

我的项目类:

@objc(Item)
class Item: NSManagedObject {

  @NSManaged var category: String
  @NSManaged var name: String
  @NSManaged var pricePerUnit: NSDecimalNumber
  @NSManaged var quantity: NSNumber
  @NSManaged var unit: String
  @NSManaged var list: List
}