在领域模型中使用可比协议

时间:2019-06-03 08:20:25

标签: swift realm

我想在领域模型“活动”中使用“可比较”协议,以便可以在“结果”中使用自定义排序 但我得到以下异常:

'RLMException', reason: 'Cannot sort on key path 'self': property 'ActivityObject.self' does not exist.' 以下是我的活动模型。

@objcMembers final class Activity:Object,Comparable{
    dynamic var id:Int = 0
    dynamic var week = 0
    dynamic var day = 0
    override static func primaryKey() -> String? {
        return "id"
    }
    static func < (lhs: Activity, rhs: Activity) -> Bool {
        if lhs.week > rhs.week{
            return true
        }else if lhs.week < rhs.week{
            return false
        }else if lhs.week == rhs.week{
            return lhs.day > rhs.day
        }
        return false
    }
}

以下是以下代码段,以使我对如何使用排序函数有所了解。

var activities:Results<ActivityObject> = ...
let sortedActivities = activates.sorted()

0 个答案:

没有答案