Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

784
Views
How to sort Results in Realm

I am using Realm with Swift. I want to sort "pictures" saved in Realm by PhotoCollectionViewController in the reverse order of date. I don't know what should I do. I would be pleased if you could lend me your wisdom.

Models.swift

import RealmSwift

class Entry: Object {
    @objc dynamic var text = ""
    @objc dynamic var date = Date()
    let pictures = List<Picture>()
    }
class Picture: Object {
    @objc dynamic var fullImageName = ""
    @objc dynamic var thumbnailName = ""
    @objc dynamic var entry : Entry?
    }

PhotoCollectionViewController.swift

import UIKit
import RealmSwift

class PhotoCollectionViewController: UICollectionViewController, UICollectionViewDelegateFlowLayout {

    var pictures : Results<Picture>?

    override func viewWillAppear(_ animated: Bool) {
        getPictures()
    }

    func getPictures() {
        if let realm = try? Realm() {
            pictures = realm.objects(Picture.self)
            //I want to sort pictures in the reverse order of date
            collectionView?.reloadData()
        }
    }
…
}
over 4 years ago · Santiago Trujillo
3 answers
Answer question

0

You should be able to sort it with the following code

realm.objects(Picture.self).sorted(byKeyPath: "date", ascending: false)
over 4 years ago · Santiago Trujillo Report

0

Sorry I solved it myself. I changed "pictures" as follows, I was able to do what I expected.

pictures = realm.objects(Picture.self).sorted(byKeyPath: "entry.date", ascending: false)

Thank you for the answers and advice.

over 4 years ago · Santiago Trujillo Report

0

If I understood correctly, you want to sort the Entry objects and then flatMap to a bunch of Pictures:

var pictures = realm.objects(Entry.self)
                   .sorted(byKeyPath: "date", ascending: false)
                   .flatMap { $0.pictures }
over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!