Realm RLMSupport中的条件WHERE

时间:2016-06-20 14:27:40

标签: objective-c swift realm

我的android应用程序中有这些查询:

RealmResults<T> results = realm.where(tClass).equalTo(key, value).findAll();
RealmResults<T> results = realm.where(tClass).findAll();

现在我想在我的ios应用程序中对它们进行编码      要求: IOS - 7.1,语言 - swift。
我试图使用RLMSupport执行此操作:

T.allObjectsInRealm(myRealm).filter("// dont know what i should put here")
T.allObjectsInRealm(myRealm).objectsWhere("// same problem")

1 个答案:

答案 0 :(得分:1)

哎呀,忘记我之前的回答了!我忘了Realm Swift的原生版本在iOS 7上不可用,你需要使用Swift桥接的Objective-C版本。

等效代码为:

let realm = RLMRealm.defaultRealm()
let allObjects = MyObjectClass.allObjectsInRealm(realm)
let filteredObjects = allObjects.objectsWhere("key == value")

为了澄清,filter方法仅在Realm Swift中可用,其在Objective-C中的等效方法是objectsWhere()。过滤语法基于Apple的NSPredicate API。有关语法和Realm查询支持的内容的更多信息,请a cheatsheet on the Realm website