- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我正在尝试使用 Cloudkit 对复合谓词执行此操作,但 Xcode 错误显示“意外的表达式”。有人知道我的代码有什么问题吗?感谢任何帮助!
let userRef = CKReference(recordID: userID, action: .None)
let predicateOne = NSPredicate(format: "recordID IN %@ AND user = %@", postIDs, userRef)
// I need all user post's that match the IDs in the array and where the user ID matches the Id in the reference field for the user.
let predicateTwo = NSPredicate(format: "recordID IN %@", followIDs)
// Or I want recordID's that match the IDs in this array.
// I want records if either predicate condition is met, or both, which is why I'm using an OrPredicateType.
let predicate = NSCompoundPredicate(type: NSCompoundPredicateType.OrPredicateType, subpredicates: [predicateOne!, predicateTwo!])
let query = CKQuery(recordType: "UserPosts", predicate: predicate)
let queryOp = CKQueryOperation(query: query)
最佳答案
对于 CloudKit 使用 NSPredicate 有一些规则。有关详细信息,请参阅 Apple documentation
您可以尝试像这样创建谓词:
NSPredicate(format: "recordID IN %@ OR (recordID IN %@ AND user = %@)", followIDs, postIDs, userRef)
但我在使用同时包含 AND 和 OR 语句的谓词方面经验不佳。如果这个谓词不起作用,那么我认为唯一的解决方案是执行 2 个单独的查询,然后合并结果。您可以使用 ExSwift 中的联合函数来做到这一点图书馆
关于swift - NSCompoundPredicate 和 Cloudkit,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29376315/
我正在使用以下代码为 iPhone 应用程序构建 NSPredicate。日志记录显示prediate为:位置包含“头”并且形状包含“椭圆形”并且纹理包含“凹凸不平”并且颜色包含“红色” 我没有得到任
我必须承认我对谓词还很陌生。我有一个用户填写的表单,并根据此信息,它应该搜索保存的数据并返回相关结果。其代码是: let numberOfPlayers = numberOfPlayersPicked
我正在构建一个费用管理器,并且我有一个带有过滤器的搜索 功能。对于每个选定的过滤器,我将相应的谓词附加到 fetchedResultsController 的谓词数组中。在我的过滤器中,我有“预算”和
我想让我的代码更可用于核心数据,我有一个 fetchRequest,它带有我必须始终使用的谓词。但是,某些方法需要更多条件。我想将这些条件添加到谓词列表中,但我不确定如何执行此操作。我想要一种方法来返
我正在尝试使用 UISearchDisplayController 和 NSCompoundPredicate 过滤 UITableView 的 数据。我有一个包含 3 个 UILabels 的自定义
我已经开始使用 NSCompoundPredicate 来组合我的谓词,但是有一个问题。 这是一个谓词的例子: Aircraft *obj = (Aircraft *)[self.managedObj
在下面的代码中,我使用 NSPredicates,特别是我使用 NSCompoundPredicate 来检查搜索函数中的多个不同参数。我将如何同时使用名字和姓氏进行搜索,我目前正在使用 AND,但它
使用带有“Condition1 AND condition2”这样的值的单个 NSPredicate 与使用带有两个子谓词的 NSCompoundPredicate 的优缺点是什么? 即使我动态构建它
我正在尝试使用 Cloudkit 对复合谓词执行此操作,但 Xcode 错误显示“意外的表达式”。有人知道我的代码有什么问题吗?感谢任何帮助! let userRef = CKReference(re
我需要用很多数据构建一个NSPredicate。例如,在 SQL 中,我会执行如下操作: SELECT * FROM TRANSACTIONS WHERE CATEGORY IN (categ
请帮助我,我想在 Swift 2.2 NSPredicate 数组中为 NSCompoundPredicate 创建一个 coredata get 函数 public func loadData(en
列表项 因此,我尝试在 Swift 中设置具有多个条件的请求。 SQL 等同于: select BOARDID from BOARD where BOARDID not like "someBoa
我想在 swift 3 中创建一个复杂的 NSCompoundPredicate,但是,我不知道该怎么做。 假设我有 5 个谓词 (p1,p2,p3,p4,p5)。我想实现以下条件: compound
我有一个带有基本谓词“pred”和一个可选谓词“fieldQuery”的 CoreData 查询 NSArray *predArray = (fieldQuery != nil) ? @[pred,
不确定主题行是否有意义,我有一个运行良好的 NSCompoundPredicate,它在 24 小时内查询日期,如果记录被“阻止”,并且也只返回我的自定义记录“类型”。 我所说的自定义类型是指值可以是
回到 Xcode 6,在一个使用 Core Data 的项目中,我有以下行。它运行良好。 fetchRequest.predicate = NSCompoundPredicate(type: .And
这是导致错误的代码。 let p1 = NSPredicate(format: "status == %@", false ) let p2 = NSPredicate(format: "publis
我是一名优秀的程序员,十分优秀!