Я пытаюсь создать приложение списка дел.
Пока у меня есть объект для хранения категорий.В рамках категории сущность имеет 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
.
. Любая помощь по добавлению различных дочерних объектов в один и тот же массив будет принята с благодарностью.:)