繁体   English   中英

如何将PFObject转换为PFRelation

[英]How to convert PFObject to PFRelation

这是我在Swift中的代码

@IBAction func addUser(sender: AnyObject) {
    var query = PFUser.query()
    query.whereKey("username", equalTo: usernameTextField)
    query.getFirstObjectInBackgroundWithBlock{ (objects:PFObject!, error: NSError!) -> Void in

        if error == nil {
            var friendList = PFUser.currentUser().relationForKey("friends") // I  don't understand relationforKey, what does it do? and what happen inside ( )?

            var addFriend = objects
            if addFriend != nil {
                PFRelation.addObject(addFriend!) // <- error here
                println("added")
            }
            PFUser.currentUser().saveInBackgroundWithBlock{
                (succeeded: Bool!, error: NSError!) in

                if error != nil {
                    println("Error")
                }
                else {
                    println("saved")
                }
            }
        }

    }
}

我想让我的应用程序能够使用Parse通过其用户名添加其他用户,而PFRelation.addObject(addFriend!)遇到了麻烦。 它表明我不能将PFObject添加到该方法中,因为()内部必须是PFRelation对象,但是我不知道如何转换它。
任何帮助表示赞赏。 谢谢!

首先,请确保您具有正确的命名约定。 usernameTextFieldUITextFieldString的实例吗? 小心点

对于您的问题,您的PFRelation不知道要关联的对象。 那么如何使用addObject关联呢? 此外,您不能直接调用addObject使用PFRelation因为addObject是不是一个工厂方法。

这是您需要做的事情,我只在这里输入,可能会有错误:

let currentUser = PFUser().currentUser()
let relation = currentUser.relationForKey("friend") // assume that name of your relation column is friend
relation.addObject(objects) // please be careful for your naming convention. You should use object as a name here

// Then save using saveInBackgroundWithBlock

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM