我不知道如何結合基於用戶選擇的謂詞。這裏是我的數據的概述。RealmSwift + Multiple Predicate
Person.swift
class Person: Object {
let id = RealmOptional<Int>()
dynamic var name = ""
dynamic var console = ""
override static func primaryKey() -> String {
return "id"
}
樣品JSON數據
{
"id": 822,
"name": "Ron",
"console": "XBox"
},
{
"id": 823,
"name": "Jenny"
"console": "Playstation 4"
}
說,例如我有很多數據和控制檯的任一組成 「的Xbox」 的, 「遊戲機4」, 「Wii的」, 「世嘉」或「PS Vita」。我創建了一個複選框過濾選項,允許用戶選擇他們想要過濾的選項並顯示擁有哪個控制檯的人員的姓名。
例如,如果他們同時選擇「XBox」和「Playstation 4」,我如何預測它們並顯示人名的結果?目前我只能顯示一個這樣的選項。
var player: Results<Person>!
func filter(sender: AnyObject) {
let realm = try! Realm()
self.player = realm.objects(Person).filter("%K = %@", "console", "XBox")
}
您需要在您的查詢中使用OR在這裏創建一個複合語句... – Shripada
但是如果我們不知道用戶將選擇什麼,我們如何複合它們? – Delonn
這個想法是有儘可能多的子表達式,因爲有選項。並根據選定的選項使用OR組合最終查詢。請看指導答案。 – Shripada