Не могу удалить данные из моей базы данных Firebase - PullRequest
0 голосов
/ 09 мая 2018

Я могу прочитать свою базу данных firebase и добавить в нее новые данные. Я использую pyrebase и python 3.6. Однако, когда дело доходит до удаления данных из него, я не могу удалить какие-либо данные. Какие-либо предложения?

import pyrebase

config = {
  "apiKey": "***",
  "authDomain": "****.firebaseapp.com",
  "databaseURL": "https://***.firebaseio.com",
  "storageBucket": "*****.appspot.com",
  "serviceAccount": "secret/****.json"
}
firebase = pyrebase.initialize_app(config)

auth = firebase.auth()
email = "*****"
password = "****"
user = auth.sign_in_with_email_and_password(email, password)

db = firebase.database()

charities_d = {
    "haaaaello": {
        "obj": None,
        "open": [1, 1, 1, 1, 1],
        "bags": [2, 2, 2, 2, 2],
    },
    "bantdddder": {
        "obj": None,
        "open": [1, 1, 1, 1, 1],
        "bags": [2, 2, 2, 2, 2],
    },
    "dsddd": {
        "obj": None,
        "open": [1, 1, 1, 1, 1],
        "bags": [2, 2, 2, 2, 2],
    },
}

# db.child("users").push({"name": "bub"}, user["idToken"])
# db.child("users").child({"name": "bub"}).remove(user["idToken"])
db.child("users").child("bub").remove(user['idToken'])

Структура базы данных DB: -пользователи -> bub & anotherName

1 Ответ

0 голосов
/ 09 мая 2018

Хорошо, я понял свой вопрос. Я полагаю, уже поздно. Я потратил слишком много времени на это! В основном, при использовании pyrebase, когда вы вставляете базу данных в качестве блока более высокого уровня, он создает сгенерированный во времени хэш. Принимая во внимание, что если вы делаете db.child(COLLECTION).child(ID_OF_ELEMENT).set(DATA, TOKEN) Ваш блок более высокого уровня становится ID_OF_ELEMENT и поэтому, когда вы db.child(COLLECTION).child(ID_OF_ELEMENT).remove(TOKEN) Он фактически находит ваш элемент и удаляет его из базы данных.

...