我有一个小的核心数据模型,它存储一个字符串数组(搜索历史)。
获取数据时,我想按创建时间排序。我目前在我的模型中只有一个属性叫做searchHistory
有没有一种方法可以使用以下代码(key:
对数据进行排序,或者我是否需要添加保存到模型的时间?
let request = NSFetchRequest<NSFetchRequestResult>(entityName: entityName)
request.sortDescriptors = [NSSortDescriptor.init(key: "", ascending: true)]
是的,您需要声明为非可选的第二个属性Date
,例如dateCreated
。在NSManagedObject
子类覆盖awakeFromInsert
中指定创建记录时的当前日期。
override func awakeFromInsert() {
super.awakeFromInsert()
dateCreated = Date()
}
然后你可以排序
request.sortDescriptors = [NSSortDescriptor(key: "dateCreated", ascending: true)]
按ascending
顺序表示最旧的条目在前。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句