使用Swift过滤Realm对象

使用Swift过滤Realm对象,第1张

概述尝试使用NSPredicate过滤我的Realm数据库时,我总是遇到以下错误: Property ‘text’ is not a link in object of type ‘getType’ 我想过滤我的Realm数据库,只显示其中包含特定文本的项目.这就是我尝试过的: let realm = try! Realm()let predicate = NSPredicate(format: " 尝试使用nspredicate过滤我的Realm数据库时,我总是遇到以下错误:

Property ‘text’ is not a link in object of type ‘getType’

我想过滤我的Realm数据库,只显示其中包含特定文本的项目.这就是我尝试过的:

let realm = try! Realm()let predicate = nspredicate(format: "typez.text.filter = 'special'")let filterThis = realm.objects(Publication).filter(predicate)print(filterThis)

我的模型类的相关部分是:

class Publication: Object,Mappable {    dynamic var ID: Int = 0    var typez = List<getType>()    dynamic var url: String?}class getType: Object,Mappable {    dynamic var text: String = ""}
我通常不直接使用nspredicate,而是在过滤器参数中进行内联谓词闭包.
let realm = try! Realm()                     //Array of publications                 let realmObjects = realm.objects(Publication)    //any publication where .text property == special will be filtered. and filter out empty array    let filterThis = realmObjects.filter({ .getType.filter({ .text == "special" } != [] ) })    print(filterThis)
总结

以上是内存溢出为你收集整理的使用Swift过滤Realm对象全部内容,希望文章能够帮你解决使用Swift过滤Realm对象所遇到的程序开发问题。

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

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

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

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

发表评论

登录后才能评论

评论列表(0条)

保存