Я использую базу данных Firebase, у меня есть список карт, мне нужно следить за некоторыми картами, если они удалены. Я пытался сделать это с ref.observe (.childRemoved)
, но это не подходит для моего случая, так как некоторые данные могут быть удалены владельцем карты, и тогда этот блок будет срабатывать несколько раз, мне нужно смотреть, не была ли удалена вся карта. Как я могу это сделать?
Моя ссылка
let ref = FIRDatabase.database().reference().child(MainGateways.cards.rawValue).child(card.id)
Структура моих карт
"cards": {
"-Khv9rUVwErNHBzXcruO": {
"additionalInfo": {
"note": ""
},
"dateProperties": {
"day": "Flex",
"isFlexDate": true,
"isFlexTime": true,
"iso8601": "",
"time": ""
},
"interestedUsers": {
"NfM26A2YcPUFz8rfYa23Kr3mjCO2": {
"isApproved": false,
"isNew": true,
"isoDate": "2017-04-17T13:08:41+04:00",
"userID": "NfM26A2YcPUFz8rfYa23Kr3mjCO2",
"userItchableName": "Alexsander K."
}
},
"isNewPendingRequest": true,
"isPrivateStatus": false,
"isTest": false,
"ownerID": "1Cix149ThIOG1ULPVjyy0LyTxbe2",
"peopleProperties": {
"availableSeats": 1,
"numberOfPeople": 1,
"numberOfPeopleDescription": "1 person"
},
"title": "Genius Lounge and Sake Bar",
"userName": "Tim C.",
"version": 1
},
Я тоже пытался сделать такую ссылку, но тогда этот блок срабатывает, если какая-то карта была удалена из списка.
guard let ref = FIRDatabase.database().reference().child(MainGateways.cards.rawValue).child(card.id).parent else { return }