import RealmSwift class Item: Object { dynamic var name: String = "" dynamic var date: Date = Date() static var all: [Item] { get { do { let realm = try Realm() return Array(realm.objects(Item.self).sorted(byKeyPath: "date", ascending: false)) } catch { print("Item.all - Something went wrong !!!") } return [] } } func update(name: String? = nil) -> Bool { do { let realm = try Realm() try realm.write() { if let name = name { if self.name != name { self.name = name } } realm.add(self, update: true) } image?.saveToLocal(withName: self.imageName) return true } catch { print("Item.update - Something went wrong !!!") } return false } func delete() { do { let realm = try Realm() try realm.write() { realm.delete(self) } } catch { print("Item.delete - Something went wrong !!!") } } // override static func ignoredProperties() -> [String] { // return [""] // } // override class func primaryKey() -> String? { // return "" // } }