gpt4 book ai didi

swift - 如何为 Realm 构建查询对象

转载 作者:可可西里 更新时间:2023-11-01 00:59:09 25 4
gpt4 key购买 nike

我正在使用 Swift 构建一个 iOS 应用程序。我正在使用 Realm 作为数据库。

我目前正在为 tableview 构建搜索功能。

这是我的过滤查询

items = realm.objects(Book).filter(predicate).filter("state IN {'pending','activated','completed','closed'}")

我正在将用户想要过滤的状态保存在另一个名为 Filter 的模型中。

我如何根据以下过滤器查询(标题是属性)的输出构建此 {'pending','activated','completed','closed'}?这个对象叫什么?

realm.objects(Filter).filter("type = 'filter' AND activated = 'true'")

最佳答案

IN 运算符的右侧可以采用替换占位符 (%@),该占位符可以包含 NSArray(或其他可枚举对象)替换为.

假设您的 Filter 模型看起来像这样:

class Filter: Object {
dynamic var type: String = ""
dynamic var activated: bool = false
dynamic var state: String = ""
}

您可以执行类似以下操作来构造您之后的查询:

let activeFilters = realm.objects(Filter).filter("type = 'filter' AND activated = 'true'")
let activeStates = activeFilters.valueForKey("state") as! [String]!

let items = realm.objects(Book).filter(predicate).filter("state IN %@", activeStates)

关于swift - 如何为 Realm 构建查询对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38228755/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com