Realm Swift:总是将nil值排在最后

Realm Swift:总是将nil值排在最后,第1张

概述我正在使用面向iOS 8并使用Realm的 Swift 2.2编写应用程序.我允许用户使用Results.sorted(_:ascending :)基于各种可选属性对对象进行排序.这对于降序排序非常有效,但对于升序排序,首先放置nil值,这看起来不正确.许多数据库系统都有NULLS FIRST / LAST选项和CoreData,看起来它可能是 subclass NSSortDescriptor. 我正在使用面向iOS 8并使用Realm的 Swift 2.2编写应用程序.我允许用户使用Results.sorted(_:ascending :)基于各种可选属性对对象进行排序.这对于降序排序非常有效,但对于升序排序,首先放置nil值,这看起来不正确.许多数据库系统都有NulLS FirsT / LAST选项和CoreData,看起来它可能是 subclass NSSortDescriptor.在Realm中排序时,有没有什么方法可以始终将nil值放在最后?即使只有一个Hacky策略,也会受到赞赏.解决方法 除了Results.sorted(_:ascending :)方法为您提供的结果之外,Realm不支持结果的自定义排序.但是你可以通过连接两个查询来相当容易地编写它,甚至可以通过计算属性公开它:

var results: [MyModel] {  let sorted = realm.objects(MyModel).sorted("...",ascending: true)  return sorted.filter("optionalProperty != nil") +         sorted.filter("optionalProperty == nil")}
总结

以上是内存溢出为你收集整理的Realm Swift:总是将nil值排在最后全部内容,希望文章能够帮你解决Realm Swift:总是将nil值排在最后所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1018427.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-23
下一篇 2022-05-23

发表评论

登录后才能评论

评论列表(0条)

保存