Я бы хотел предотвратить удаление данных в базе данных Firebase Realtime в зависимости от условия. Пользователь, который не является автором, должен иметь возможность обновлять «заметку», но не удалять ее.
У меня есть коллекция «заметок» в моей базе данных, для которой задан следующий набор правил.
"notes": {
".read": "
auth.uid !== null //&&
",
"$note_id": {
".write": "
//New data
!data.exists() && auth.uid !== null ||
//Existing data
data.child('access').child('author').val() === auth.uid ||
data.child('access/members').child(auth.uid).exists()
",
"data": { .. },
"access": {
"author" : { .. },
"members" : { .. }
}
}
}
Как я могу разрешить только «автору» удалять «заметку»?
Я пытался использовать облачные функции Google для Firebase, но у меня есть только доступ к событию .onDelete (), которое запускается после удаление уже выполнено. Могу ли я использовать .onWrite () для этой цели - и если да, то как? Я уже реализовал прослушиватели для .onCreate () .onUpdate () и .onDelete () для узла / notes в базе данных.
С уважением, Кермит