swift - 核心数据 - 将多个子实体添加到数组
问题描述
我正在尝试构建一个待办事项列表应用程序。
到目前为止,我有一个用于存储类别的实体。在类别实体中,它有 3 个关系。一个到任务实体,一个到事件实体,一个到提醒实体。
在我的应用程序中,我希望能够进入一个类别并查看一个tableView
充满任务、提醒和事件的类别。
到目前为止,我的tableView
作品只有一个子实体。这是通过以下代码完成的:
func loadEvents(with request: NSFetchRequest<Event> = Event.fetchRequest()) {
let predicate = NSPredicate(format: "parentCategory.name MATCHES %@", selectedCategory!.name!)
request.predicate = predicate
do {
itemsArray = try context.fetch(request)
} catch {
print(error)
}
print(itemsArray)
tableView.reloadData()
}
当我尝试将所有 3 个子类型添加到同一个数组时,就会出现问题。表格视图中没有显示任何内容。(我的表格视图中也支持多种单元格类型。)
我试过这段代码:
func loadItems(with request: NSFetchRequest<Task> = Task.fetchRequest()) {
itemsArray = []
let taskRequest: NSFetchRequest<Task> = Task.fetchRequest()
let predicate = NSPredicate(format: "parentCategory.name MATCHES %@", selectedCategory!.name!)
taskRequest.predicate = predicate
let eventRequest: NSFetchRequest<Event> = Event.fetchRequest()
eventRequest.predicate = predicate
do {
itemsArray.append(try context.fetch(taskRequest))
itemsArray.append(try context.fetch(eventRequest))
} catch {
print(error)
}
print(itemsArray)
tableView.reloadData()
}
但我的表格视图只是显示为空。我的数组也是一个Any
.
任何有关如何将不同的子实体添加到同一数组的帮助将不胜感激。:)
解决方案
推荐阅读
- javascript - 改进比较数组数据的 JS 循环
- aspnetboilerplate - 最新模板问题
- java - edittext在输入类型android studio中设置有限字符
- node.js - Node.js 应用程序在本地主机上运行,但在 Heroku 上出现 404 错误
- node.js - 如何在 goormIDE 中启动使用 create-react-app 创建的 React 应用程序?
- google-apps-script - 为什么 G Suite 组织用户在表格插件中分配给 overgridimage 的脚本永远运行?
- php - Laravel 中此集合实例上不存在属性 [名称]
- laravel - firstOrNew 如何在数据库中查找记录?
- c# - 如何读取3行文本文件c#
- angular - 使用弹簧安全时请求错误