Firebase удалить потерянные данные из удаленных данных - PullRequest
0 голосов
/ 06 сентября 2018

Допустим, у меня есть два типа данных:

Сообщения


"posts": {
    "postid_xx1": {
        "title": "Lorem ipsum"
    },
    "postid_xx2": {
        "title": "Amet laboris"
    },
    "postid_xx3": {
        "title": "Sit quis incididunt"
    }
}

Пользователи


"users": {
    "userid_xx1": {
        "name": "John Doe",
        "posts": {
            "postid_xx1": true,
            "postid_xx3": true
        }
    },
    "userid_xx1": {
        "name": "Jane Doe,
        "posts": {
            "postid_xx2": true
        }
    }
}

Как удалить postid_xx1 из users, когда я удаляю его из posts?.

1 Ответ

0 голосов
/ 06 сентября 2018

В базе данных Firebase Realtime отсутствует функция автоматического удаления данных. Вам придется написать код, чтобы сделать это самостоятельно. Поскольку база данных - «NoSQL», она не управляет связями данных, которые вы в нее помещаете. Вы должны сами управлять этими отношениями.

Вы можете написать это на клиенте с помощью двух вызовов remove () ( см. Документы ):

firebase.database().ref(`posts/postid_xx1`).remove();
firebase.database().ref(`users/userid_xx1/posts/postid_xx1`).remove();

Или вы можете использовать облачные функции для написания триггера, который автоматически ищет и удаляет совпадающие узлы в users при удалении узла из posts.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...