I'm trying to load data into a tableview. Once a user clicks on the cell, it should delete. However, nothing happens. I know that it runs, error is nil, I know that the document ID exists, so I'm unsure as to why the document isn't deleting. Here is some code:
Here's where i load in my data:
self.comments = []
for index in 0...1
{
var postCategory = ""
if index == 0 { postCategory = "cPosts" }
else { postCategory = "rPosts"}
db.collection(postCategory).order(by: "rankValue", descending: true).getDocuments
{ snapshot, error in
guard error == nil else { print(error!); return }
for postDoc in snapshot!.documents
{
self.getUsername(uid: self.uid!)
{ username in
self.secondGroup.enter()
self.ref = self.db.collection(postCategory).document(postDoc.documentID).collection("comments")
self.ref?.whereField("username", isEqualTo: username).getDocuments
{ snapshot, error in
guard error == nil else { print(error!); return }
for doc in snapshot!.documents
{
let comment = Comment(data: doc.data())
comment.docID = doc.documentID
self.comments.append(comment)
self.firstGroup.enter()
self.repRef = self.db.collection(postCategory).document(postDoc.documentID).collection("comments").document(comment.docID).collection("replies")
self.repRef?.whereField("username", isEqualTo: username).getDocuments
{ snapshot, error in
guard error == nil else { print(error!); return }
for doc in snapshot!.documents
{
let reply = Reply(data: doc.data())
reply.docID = doc.documentID
self.comments.append(reply)
}
self.firstGroup.leave()
}
}
self.firstGroup.notify(queue: .main) {
self.secondGroup.leave()
}
self.secondGroup.notify(queue: .main) {
completion(self.ref!, self.repRef!)
}
}
}
}
}
}
Here's where I actually delete the document:
self.ref?.document(self.comments[indexPath.row].docID).collection("replies").getDocuments
{ snapshot, error in
guard error == nil else { print(error!); return }
for doc in snapshot!.documents
{
doc.reference.delete { error in
guard error == nil else { print(error!); return }
}
}
}
self.ref?.document(self.comments[indexPath.row].docID!).delete { error in
guard error == nil else { print(error!); return }
print()
}
self.repRef?.document(self.comments[indexPath.row].docID).delete { error in
print("ranhere also")
guard error == nil else { print(error!); return }
}