Swift3 错误的现实生活

Swift3 错误的现实生活,swift3,realm,Swift3,Realm,本部分代码: var posts: Results<Post> { get { return realm.objects(Post.self).sorted(byKeyPath: "id", ascending: false) } } var帖子:结果{ 得到{ 返回realm.objects(Post.self).sorted(按键路径:“id”,升序:false) } } 返回ID,如 96950 94930 我的帖子id是String。如何在

本部分代码:

var posts: Results<Post> {
    get {
        return realm.objects(Post.self).sorted(byKeyPath: "id", ascending: false)
    }
}
var帖子:结果{
得到{
返回realm.objects(Post.self).sorted(按键路径:“id”,升序:false)
}
}
返回ID,如

96950 94930


我的帖子id是
String
。如何在不使用
id Int
的情况下获得正确排序的对象不幸的是,当通过
字符串
属性排序时,Realm会自动按字母顺序排序,而不是按数字排序

添加了通过块/闭包对属性进行手动排序的功能,但目前还没有什么可宣布的。我建议您使用“+1”这个特定的GitHub线程,这样它就可以获得更高的优先级

如果可以,最理想的解决方案是将
id
更改为
Int
属性。如果做不到这一点,njzk2的手动将
结果
排序到Swift数组中的解决方案“将”起作用,但这将一次将所有领域对象分页到内存中(导致更多开销),因此这不是最佳解决方案。

使用
排序(按:)
并提供您自己的排序描述符。