Как правильно структурировать NSPredicate для создания массива значений из объектов CoreData с определенным тегом даты? - PullRequest
0 голосов
/ 03 сентября 2018

Я пытаюсь получить значения из объектов CoreData, введенных на определенную дату. Я нашел несколько схожих вопросов на SO и других сайтах, а также много разобрался и собрал воедино код, который, кажется, должен работать, но он не возвращает никаких значений для данных, которые, как я знаю, есть. Я относительный новичок, поэтому основные ответы приветствуются. Код ниже. Извините, если это излишне, но я не уверен, где разбивка. Заранее спасибо.

 @IBAction func plusDayToEdit(_ sender: Any) {
    if dayToEdit < 30 {
        dayToEdit += 1
        dayToEditLabel.text = String(dayToEdit)
        previousDayFetchRequest()
    } else {

    }

func previousDayFetchRequest() {

guard let appDelegate = UIApplication.shared.delegate as? AppDelegate else { return }

let managedContext = appDelegate.persistentContainer.viewContext

let fetchRequest = NSFetchRequest<NSManagedObject>(entityName: "Entry")

var calendar = Calendar.current
calendar.timeZone = NSTimeZone.local

let dateToEdit = calendar.date(byAdding: .day, value: (0 - dayToEdit), to: Date())
let startDate = calendar.startOfDay(for: dateToEdit!)
let endDate = calendar.date(byAdding: .day, value: 1, to: startDate)

let fromPredicate = NSPredicate(format: "entryDate <= %@", startDate as NSDate)
let toPredicate = NSPredicate(format: "entryDate > %@", endDate! as NSDate)
let dateToEditPredicate = NSCompoundPredicate(andPredicateWithSubpredicates: [fromPredicate, toPredicate])

fetchRequest.predicate = dateToEditPredicate 
...