CoreData 一对多关系。 NSSet 归属问题

Posted

技术标签:

【中文标题】CoreData 一对多关系。 NSSet 归属问题【英文标题】:CoreData one-to-many relationship. Problem with NSSet attribution 【发布时间】:2021-08-06 12:49:22 【问题描述】:

下午好。这不是我第一次考虑这个任务。我有一个一对多的 CoreData 表。

我能够将属性链接到文件夹。也就是说,文件夹包含许多属性。底部一段代码,如何链接表格

var selectedFolder: Folders?
do 
            arrayPropertys = try context.fetch(Property.fetchRequest())
            arrayPropertys[indexPath.row].parentFolders = selectedFolder

在主屏幕上,我需要显示按下的特定文件夹中的属性。我可以服用的金额:

arrayPropertys[indexPath.row].parentFolders?.propertys!.count

正确显示数量。例如,一个文件夹中有 5 个属性,另一个文件夹中有 2 个属性。

问题是我无法提取属性。有Name属性,但是因为NSSet对象的类型,不想显示。

我无法以任何方式获取这些值,我已经尝试了所有方法,我在 Internet 上阅读过。它不起作用。看得见摸不着

【问题讨论】:

【参考方案1】:

使用(parentFolders?.propertys?.allObjects as? [Property]) 作为Array<Property> 访问对象

【讨论】:

其实是parentFolders?.propertys?.allObjects我看错了你的代码。 让 pr = (arrayPropertys[indexPath.row].parentFolders?.propertys!.allObjects)!作为数组,这不能作为数组工作。这是数组,但它们没有“名称” 你所要做的就是从那里投射它 类似的东西。我没有你模型的全貌,但是是的 已经是你不需要的数组了as Array<Property>这只是一个描述

以上是关于CoreData 一对多关系。 NSSet 归属问题的主要内容,如果未能解决你的问题,请参考以下文章

CoreData 一对多关系

将表示一对多关系的 NSSet 绑定到 NSArrayController 的选择

用 CoreData 对象填充 NSSet

如何管理 Core Data 中的一对多关系?

CoreData如何将项目添加到与实体相关的NSSet

使用搜索栏在 CoreData 中搜索 NSSet 属性