如何在 Swift 中从 Core Data 访问子数据和父数据
Posted
技术标签:
【中文标题】如何在 Swift 中从 Core Data 访问子数据和父数据【英文标题】:How to access child and parent data from Core Data in Swift 【发布时间】:2019-01-09 07:18:26 【问题描述】:我有一个视图控制器 (VC2),可让您输入产品名称和描述。这个 VC 连接到另一个 VC (VC3),允许您添加多个图像。返回到 VC2 后,有一个保存 VC2 按钮和一个带有 tableview (VC1) 的视图控制器,显示产品名称列表和第一个图像的缩略图。
我将产品标题和产品描述保存到名为 ProductDetails 的 CoreData 实体中。我将图像保存到名为 ProductImages 的核心数据实体中。我在 ProductDetails 和 ProductImages 之间建立了一对多的关系。
我可以使用 NSFetchRequest 在 VC1 中加载产品标题列表。但我无法弄清楚如何在同一个 VC 中加载子图像,特别是第一张图像。我想我需要使用 NSPredicate 但我无法在线找到解决方案。任何帮助将不胜感激。Core Data Entities and relationships
【问题讨论】:
【参考方案1】:ProductDetails
实体中的关系 image
也是您可以像访问任何其他属性一样访问的属性。
let images = productDetail.image
images
将是一组ProductImage
、Set<ProductImage>
【讨论】:
谢谢。所以很高兴知道我可以将图像作为属性访问。但是当我添加图像时,我的 productDetails.image 中的值为零。我一定是在某个地方跳过了一步。以上是关于如何在 Swift 中从 Core Data 访问子数据和父数据的主要内容,如果未能解决你的问题,请参考以下文章
在 Swift Core Data 中从一对多关系中获取对象
在 Core Data 中从 AppDelegate 执行回滚功能时需要访问 ManagedObjectContext 的同一实例
Singleton 类 DataLoader - 在 AppDelegate 中从 Core Data 设置值,但无法访问其他类中的 DataLoader 变量