根据另一个模型数组中存在的日期对模型数组进行排序。 Swift 3

Sort model array as per date which is present in another model array. Swift 3

我有一个模型数组说 [Conversation]

conversation 模型对象中还有另一个模型数组 [Message]

Message 模型对象中有一个 属性 说 createdOn

所以我试图按照 属性 createdOn(日期 属性)降序排列 conversation 数组,它在消息模型中。

我已成功对消息数组进行排序。但我在排序 conversation 数组时没有运气。

let msgArray = Message.mr_findAll() as? [Message]
let sortDescriptor = NSSortDescriptor(key: "createdOn", ascending: false)
let orderedArray = (msgArray as? NSArray)?.sortedArray(using: [sortDescriptor]) as! [Message]

P.S。

我正在为数据库使用魔法记录。

我假设一个对话有很多消息,并且您想像大多数聊天应用程序一样按最后发送的消息对其进行排序。如果是这种情况,我建议将最后更新日期存储在对话对象中,并在插入消息时更新它。