迅速转化项目3使用CoreData
我是比较新的雨燕和可可的世界,并希望能得到最新最好的方式来设计数据模型为人民的意见如下:迅速转化项目3使用CoreData
我现在有一个原型项目为MacOS,具有以下(简化的)数据模型:
class Loan: NSObject, XMLParseDelegate {
var id: Int
var address: Address
// ... other properties and methods
func parseZillow() {
// bunch of code, etc
}
}
其中Address
是具有其自己的属性和方法的另一个类结构。那么我的[Loan
]势必NSArrayController
和NSTableView
使用Cocoa绑定一个数组(和一切工作很好,但现在我要介绍的持久存储到图片)
现在(两部分)的问题:
1)如果我要用CoreData模型来表示这个结构 - 我该如何表示loan.address
路径的嵌套类结构? CoreData(Loans and Addresses)中只有2个实体,并且两者之间有一对一的关系?这是最佳做法吗?
2)我对CoreData的理解是,作为我的数据模型而不是使用数组[Loan]
,CoreData将成为新的数据模型(并将创建一个代表我的数据模式的托管对象,类似于我目前使用的数据模式class Loan
object。我在哪里可以定义我目前用于我的Loan
和Address
类的方法?我是否需要在MO上创建一个包装类?我已经看了一大堆教程,但这部分仍然不清楚我
是的,你可以有两个实体,贷款和地址。如果每个贷款有一个地址,每个地址有一个贷款的关系髋关节是一对一的。如果一个地址可以有多个贷款,那么这个关系是多对一的。
创建NSManagedObject子类
默认情况下,核心数据将返回NSManagedObject实例您的应用程序。但是,为模型中的每个实体定义NSManagedObject的子类是非常有用的。特别是,当你创建NSManagedObject的子类时,你可以定义实体可以用于代码完成的属性,并且可以为这些子类添加便利方法。
要创建NSManagedObject的子类,请在Xcode的核心数据模型编辑器中选择该实体,然后在数据模型检查器的实体窗格中的类字段中输入名称。然后在Xcode中创建子类(AAAEmployeeMO)。
'创建NSManagedObject子类...'位于编辑器菜单中。您可以一次创建所有子类。您可以将您的方法添加到NSManagedObject子类。
警告:核心数据不是初学者技术。 – matt