gpt4 book ai didi

ios - 解析关系中不包含的查询

转载 作者:行者123 更新时间:2023-11-30 13:03:58 24 4
gpt4 key购买 nike

我对 swift 和解析有点陌生,需要一些帮助。我正在对数据库中的所有用户进行查询,以便您可以点击其中一个并将其添加到您的friendRelation 中。但是当他们重新加载时,他们不应该看到已经存在于关系中的用户。这是我到目前为止所拥有的:

private func fetchUsers() {

let userQuery = PFUser.query()
userQuery?.whereKey("email", containedIn: PFUser.currentUser()!["contacts"] as! [AnyObject])

//I need a constraint to say whereKey email/objId not in friendRelation

userQuery?.orderByAscending("username")
userQuery?.findObjectsInBackgroundWithBlock({ (users, error) in

if error == nil {

self.users = users as! [PFUser]
self.tableView.reloadData()

}
})
}

有人知道如何进行该约束吗?

最佳答案

如果你想显示所有你 friend 的用户,你应该在where子句中使用notContainedIn,因为你想获取所有不属于你 friend 的用户.

在您的代码中检查电子邮件字段。仅当您的联系人数组是仅包含电子邮件的数组时,它才有效。我认为最好采用以下方法之一:

  1. 您的联系人数组应包含用户 objectId 数组,而不是电子邮件,然后您的位置应如下所示:

userQuery ? .whereKey("objectId", notContainedIn: PFUser.currentUser() !["contacts"] as![AnyObject])

为了获得更好的性能,使用 ids 而不是其他字段总是更好(还有更多原因)

  • 您的联系人数组应包含用户对象列表,然后您应使用不同类型的查询并使用 whereKey:doesNotMatchKey:inQuery: 选项
  • 关于ios - 解析关系中不包含的查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39606401/

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