Как обновить eImageUrl у существующего сотрудника? Узел Я пытаюсь получить доступ выглядит следующим образом:Как обновить определенный узел в Firebase?
Employees
KTpWLCrQTTSfQnTCn5w
eId : "1000"
deptId : "10"
eImageUrl ""
KTqWLCrVVTMfQsTCw6n
eId : "1001"
deptId : "10"
eImageUrl ""
значение, такие как KTpWLCrQTTSfQnTCn5w
для каждого сотрудника было сгенерировано автоматически с помощью childByAutoId()
.
У меня есть eId
для сотрудника, которого я хочу обновить. Я попытался следующие:
databaseRef.child("Employees").child("10001").setValue(["eImageUrl": eImageUrl])
но создает другой узел под сотрудников:
Employees
KTpAQCrYIBSfQxTCn2w
eImageUrl "https://firebasestorage.googleapis.com/c0/myapp.com/a/employee.jpg"
Я предпочел бы не делать, потому что тогда вы должны убедиться, что ID Безразлично» t уже существуют. Случайный идентификатор лучше, но лучше, если Firebase создает его. – 4thSpace
Я обновил свой ответ с запросом, который работает с вашей текущей структурой данных. Но ваш код предполагает, что вы уже предполагаете, что eId уникален. Я бы подумал о переходе к модели данных, которая соответствует тому, как вы думаете об этом на практике. –
Спасибо. Я собираюсь использовать то, что вы предложили, и позволить автогенерированным идентификаторам сотрудников (Firebase) быть корнем каждого узла вместо некоторого автоматически созданного несвязанного идентификатора. – 4thSpace