Как сделать сортировку CoreData - PullRequest
0 голосов
/ 28 января 2019

Я создаю приложение с CoreData.Я хочу отсортировать данные CoreData по дате.Я уже пробовал это:

func getData() {
  let request = NSFetchRequest<Session>(entityName: "Session")
  let sort = NSSortDescriptor(key: "date", ascending: false)
  request.sortDescriptors = [sort]

  do {
    sessions = try contains.viewContext.fetch(request)
    print("Got \(sessions.count) sessions")
    tableView.reloadData()
  } catch {
    print("Fetch failed")
  }
}

Но это показывает следующую ошибку: Use of unresolved identifier 'NSFetchRequest' by the request.

1 Ответ

0 голосов
/ 29 января 2019

Во-первых, вам нужен NSManagedContext, который может выглядеть примерно так:

let context = (UIApplication.shared.delegate as! AppDelegate).persistentContainer.viewContext

И, конечно, переменная для NSManagedObjects, которые возвращаются:

var sessions: [NSManagedObject] = []

Тогда вам нужно использовать это так:

func loadQuotes() {
   let fetchRequest = NSFetchRequest<NSManagedObject>(entityName: "Session")
   let sort = NSSortDescriptor(key: "date", ascending: false)
   fetchRequest.sortDescriptors = [sort]
   do {
      sessions = try context.fetch(fetchRequest)
      } catch let error as NSError {
      print("Fetch failed")
   }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...