我想将值保存到表中,然后从另一个表中删除一行。但是它保存到表但不从其他表中删除。 控制台说对象为null但是当我打印文本值并从parse.com检查表时我确信在Wish表中有一个与文本相同的objectId。 这是我使用的代码。
@IBAction func TakeWish(sender: AnyObject) {
var takenWish = PFObject(className: "TakenWish")
takenWish["title"] = self.wishTitle.text
takenWish["description"] = self.wishDesc.text
takenWish["url"] = self.wishUrl.text
takenWish["userName"] = PFUser.currentUser()!.username
takenWish["takenUserName"] = self.username.text
let imageData = UIImagePNGRepresentation(wishImage.image!)
let imageFile = PFFile(name: "image.png",data: imageData!)
takenWish["imageFile"] = imageFile
takenWish.saveInBackgroundWithBlock {
(success: Bool, error: NSError?) -> Void in
if (success) {
// The object has been saved.
} else {
// There was a problem, check error.description
}
}
var deleteQuery = PFQuery(className: "Wish")
deleteQuery.whereKey("objectId", equalTo: text! )
deleteQuery.findObjectsInBackgroundWithBlock {(objects , error) -> Void in
if error == nil {
if let objects = objects {
for object in objects {
object.deleteInBackground()
}
}
}
}
displayAlert("Taken", message: "Wish Has Been Taken !")
self.performSegueWithIdentifier("toPro", sender: nil)
}
但是当我在另一个按钮中单独使用此代码时,它可以正常工作。
var deleteQuery = PFQuery(className: "Wish")
deleteQuery.whereKey("objectId", equalTo: text! )
deleteQuery.findObjectsInBackgroundWithBlock {(objects , error) -> Void in
if error == nil {
if let objects = objects {
for object in objects {
object.deleteInBackground()
}
}
}
}
这段代码有什么问题我可以修复它?