如何将 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
对象,但我不知道如何转换它。
任何帮助表示赞赏。谢谢!
首先,确保您有正确的命名约定。 usernameTextField
是 UITextField
还是 String
的实例?小心它。
对于你的问题,你的PFRelation
不知道要关联哪些对象。那么它与使用 addObject
有什么关系呢?此外,您不能使用 PFRelation
直接调用 addObject
,因为 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
这是我在 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
对象,但我不知道如何转换它。
任何帮助表示赞赏。谢谢!
首先,确保您有正确的命名约定。 usernameTextField
是 UITextField
还是 String
的实例?小心它。
对于你的问题,你的PFRelation
不知道要关联哪些对象。那么它与使用 addObject
有什么关系呢?此外,您不能使用 PFRelation
直接调用 addObject
,因为 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