如何删除firebase中的值
How to remove values in firebase
只是一个小问题:
现在我有了这个结构
images
---- uniqueId
-------- id_logement : 1747657
-------- image : dataimage
---- uniqueId
-------- id_logement : 1747657
-------- image : dataimage
---- uniqueId
-------- id_logement : 985445234
-------- image : dataimage
而且更好!非常感谢。但是:
如何删除id_lgement=1747657的所有图像
我试过
firebase.database().ref('logements/'+key).remove();
firebase.database().ref('geofire/'+key).remove();
firebase.database().ref('images').child('id_logement').equalTo(key).remove();
密钥=1747657,但图像没有成功!这个UniqueId让我很紧张!你能给我更多的建议吗?非常感谢
由于您希望基于查询批量删除数据,因此需要首先检索并删除它,将其值设置为null,然后使用update
提交更改。
const ref = firebase.database().ref('images');
ref.orderByChild('id_logement').equalTo(key).once('value', snapshot => {
const updates = {};
snapshot.forEach(child => updates[child.key] = null);
ref.update(updates);
});
正在工作jsFiddle。
实际上有一种更简单的方法。
只需调用快照中的ref
属性,然后使用.on('child_added',...)
var ref = firebase.database().ref('images');
ref.orderByChild('id_logement').equalTo(key).on('child_added', (snapshot) => {
snapshot.ref.remove()
});
试试这个代码:-
rootRef.child("images").addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot snapshot) {
for(DataSnapshot dataSnapshot : snapshot.getChildren())
{
if(dataSnapshot.child("id_logement").getValue().toString().equals("1747657"))
{
dataSnapshot.getRef().setValue(null);
}
}
}
@Override
public void onCancelled(FirebaseError firebaseError) {
}
});
相关文章:
- 如何在iOS应用程序中从Firebase中删除超过6小时的数据
- 如何从Firebase聊天中删除项目
- Firebase对ref调用.remove()正在删除所有父级
- Firebase 删除查询结果
- 无法访问要传递给删除函数的正确 Firebase 项键
- 删除表中的行 - AngularJS 和 FireBase
- 从Firebase中删除项目
- 使用React删除Firebase中的项,重新渲染会返回未定义的项
- 如何删除/删除Firebase上的节点
- 传入密钥会导致我的 Firebase 网址中出现额外的字符,如何删除它们
- 如何设置安全规则以防止删除firebase中的数据
- Firebase根据子值删除节点
- Firebase Web update()删除所有其他子节点
- Firebase -使用limitToLast删除时防止child_added
- Firebase事件保证子添加子删除
- Firebase push -删除唯一对象并插入新对象(基本上覆盖内容)
- 从Firebase数据库中删除ref的子对象
- Firebase Google OAuth - Auth uid不同于先前已删除的电子邮件的回调返回的uid
- Firebase用户删除不起作用
- 在Firebase中实现删除tweet和like/upvote功能