【问题标题】:How to add data to object when keys retrieve only 1 object? PARSE.COM SWIFT当键仅检索 1 个对象时如何向对象添加数据? PARSE.COM 斯威夫特
【发布时间】:2023-03-16 20:33:01
【问题描述】:

好的,我有一个名为“PrivateGroups”的类。 PrivateGroups 中的每一行都包含“GroupName”和“Password”。在 UIView 中,如果用户输入 GroupName 和 Password 并点击提交,我想将他们的用户 objectId 添加到“members”下的特定组名/密码条目中。

这是我的代码不起作用:

var query = PFQuery(className: "PrivateGroups")

query.whereKey("privatename", equalTo: joinname.text)

query.whereKey("password", equalTo: joinpassword.text)

query.findObjectsInBackgroundWithBlock { (objects, error) -> Void in

if objects.count == 1 {

for object in objects {

query.getFirstObject().addUniqueObject(PFUser.currentUser().objectId, forKey: "members")

query.getFirstObject().saveInBackground() }}

所以如果你匹配“成员”和“密码”并按下按钮,我想将用户的对象 ID 添加到“成员”

【问题讨论】:

    标签: ios xcode swift parse-platform


    【解决方案1】:

    在您的循环for object in objects 中,您不需要也调用query.getFirstObject(),因为您已经拥有该对象。相反,尝试

    for object in objects {
           if let arr = object["members"]{
              if(arr.containsObject(PFUser.currentUser().objectID == false){
                 arr.addObject(PFUser.currentUser().objectID)
                 object.saveInBackground()
              }
           }   
    }
    

    【讨论】:

    • 哦,我的错,这不是我的项目中的问题,我始终使用 query1。我编辑了帖子以反映这一点。有什么线索吗?
    • 我以为我只是一个错字!只是为了确保您的“成员”列在 Parse 中声明为数组,对吗?另外,您在运行代码时是否收到错误消息?
    • 出现错误,无法使用参数列表类型(字符串!)调用“添加唯一对象”
    • 抱歉,忘了addUniqueObject 需要不止一个输入。在我的回答中改变了这一点。
    猜你喜欢
    • 1970-01-01
    • 2017-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-06-07
    • 1970-01-01
    • 2017-07-22
    • 2017-03-24
    • 2014-11-01
    相关资源
    最近更新 更多