在查询对象时尝试从Parse中删除对象时遇到问题。
我的代码:
var query = PFQuery(className:"sendMessage")
query.whereKey("messageSent", equalTo: PFUser.currentUser()!.username!)
query.whereKey("messageReceived", equalTo: self.nameLabel!.text!)
query.findObjectsInBackgroundWithBlock({ (objects, NSError) -> Void in
if objects != nil {
if let objects = objects as? [PFObject] {
for object in objects {
print(object["message"])
/// here I would go: object.deleteInBackground()
object.save()
}
}
}
})
但似乎我找不到正确的方法。任何见解?
答案 0 :(得分:1)
var query = PFQuery(className:"sendMessage")
let username = PFUser.currentUser()?.username
query.whereKey("messageSent", equalTo: username)
query.whereKey("messageReceived", equalTo: self.nameLabel!.text!)
query.findObjectsInBackgroundWithBlock({ (objects:[AnyObject]?, error:NSError) -> Void in
if error == nil {
if let objects = objects as? [PFObject] {
for object in objects {
let deletemessage = object["message"] as! String
print(deletemessage)
object.delete()
}
}
}
else {
println("Error")
}
})
答案 1 :(得分:0)
我之前已成功使用deleteEventually()
,与PFObject(withoutDataWithClassName: YourClassName, objectId: YourObjectID)
一起使用。
如果有效,我不知道为什么,但是好吧:)。
(正如Hector在本解析题(Objective-C)中所述:https://www.parse.com/questions/delete-row)
for object in objects {
print(object["message"]
var toDelete = PFObject(withoutDataWithClassName: "sendMessage", objectId: object.objectID)
toDelete.deleteEventually()
}