掌握CoreData(第4部分,面向核心数据对象的CRUD)
为了使用面向对象的方式演示核心数据的基础,让我们使用之前的项目,使其以面向对象的方式执行CRUD操作,因为我们需要将NSManagedObject子类化。
请按照以下步骤使用Xcode创建Core Data管理的对象子类:
- 在项目导航器中选择您的Core Data模型。Xcode在编辑器区域的大纲视图中显示所有实体。
- 在大纲视图中选择一个实体,然后验证是否在Data Model检查器中将Codegen弹出菜单设置为Manual / None,如图1所示。对于要创建Core Data受管对象子类的所有实体,请重复此步骤。 由于我们只有一个实体任务,因此我们在任务实体上执行了此任务。
选择Editor> Create NSManagedObject Subclass…,如图2所示。
在显示的工作表中,选择包含您的实体的数据模型,然后单击“下一步”。 图3从列表中选择数据模型。
- 在出现的工作表中,选择要创建其Core Data托管对象子类的实体,然后单击“下一步”。 图4从列表中选择您的实体。
在出现的工作表中,选择一个保存文件的位置,然后单击Create,如图5所示。
Xcode在所选位置为每个所选实体创建并保存名为ClassName + CoreDataClass和ClassName + CoreDataProperties的文件,其中ClassName是实体的NSManagedObject
子类的名称。 ClassName + CoreDataClass实现NSManagedObject
子类,如图6所示。
ClassName + CoreDataProperties实现ClassName + CoreDataClass扩展(对于Swift应用程序)或类别(对于Objective-C应用程序),如图7所示。
以面向对象的样式创建记录到核心数据
以面向对象的样式从核心数据中获取记录
从面向对象样式的核心数据中删除记录
摘要
我们只是以对象样式的方式完成了CRUD操作。 正如我们在第1部分中所述。
核心数据以一种看起来非常面向对象的方式存储我们的代码。 实体是指类,属性是指var,关系是指var指向其他类
接下来是什么?
在下一部分中,我们将讨论实体之间的关系。
有用的链接
https://store.raywenderlich.com/products/core-data-by-tutorials
https://www.objc.io/issues/4-core-data/core-data-overview/
https://zh.wikipedia.org/wiki/Object-relational_mapping
https://cocoacasts.com/what-are-core-data-entities-and-attributes
https://cocoacasts.com/what-is-the-core-data-stack
https://developer.apple.com/library/archive/documentation/DataManagement/Devpedia-CoreData/coreDataStack.html
https://medium.com/@ankurvekariya/core-data-crud-with-swift-4-2-for-beginners-40efe4e7d1cc
https://www.raywenderlich.com/7569-getting-started-with-core-data-tutorial
https://developer.apple.com/library/archive/qa/qa1952/_index.html