Я пытаюсь удалить объект из класса UserRequests через swift только в том случае, если объект принадлежит текущему пользователю, и этот запросResponded не равен true. Однако, я получаю сообщение об ошибке objects.deleteInBackground()
, и функция все еще не работает, когда я удаляю эту строку.Как удалить объект из Parse через PFQuery
func deleteRequest(){
let check = PFQuery(className: "UserRequests")
check.whereKey("requestResponded", equalTo: "True")
let query = PFQuery(className: "UserRequests")
query.whereKey("username", equalTo: (PFUser.currentUser()?.objectForKey("username") as! String))
query.findObjectsInBackgroundWithBlock({ (objects, error) -> Void in
if objects != nil && error == nil{
// Successfully retrieved the object
check.getFirstObjectInBackgroundWithBlock {
(object: PFObject?, error: NSError?) -> Void in
if error != nil || object == nil {
print("Not accepted.")
object!.deleteInBackground()
objects.deleteInBackground()
} else {
print("Successfully retrieved the object.")
}
}
}else{
self.performSegueWithIdentifier("requestAccepted", sender: self)
}
})
}
Спасибо. Как я могу использовать 1 запрос для этого? –
Во-первых, вам нужно подумать о таких условиях, как условие удаления объектов? каково условие выполнения segue? Как насчет еще случая? –
Хорошо. Как упоминалось в вопросе, условие для удаления объекта состоит в том, что оно принадлежит текущему пользователю, и что ключ «requestResponded» не является True. –