作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在做一个应用程序,当用户删除他/她的帐户时,他在数据库中的所有数据记录也将被删除(例如,在 friend 中,等于他的 uid 的节点也将被自动删除,从而取消好友关系)其他用户。
最佳答案
我正在从我的 friend 列表中删除一位 friend :-
private void removeFromFriend(final String type, String id) {
Map hashMap = new HashMap();
hashMap.put(firebaseUser.getUid() + "/" + id, null);
hashMap.put(id + "/" + firebaseUser.getUid(), null);
mDatabaseReference.child(userFriendListTableName).updateChildren(hashMap, new DatabaseReference.CompletionListener() {
@Override
public void onComplete(@Nullable DatabaseError databaseError, @NonNull DatabaseReference databaseReference) {
if (databaseError == null) {
profileDialog.dismiss();
friendAdapter.notifyDataSetChanged();
if (type.equalsIgnoreCase("block")) {
Toast.makeText(getActivity(), "Blocked Successfully", Toast.LENGTH_SHORT).show();
} else if (type.equals("report")) {
Toast.makeText(getActivity(), "Report as spam successfully and removed from friends", Toast.LENGTH_SHORT).show();
} else {
Toast.makeText(getActivity(), "User removed from friends", Toast.LENGTH_SHORT).show();
}
} else {
Toast.makeText(getActivity(), "" + databaseError.getMessage(), Toast.LENGTH_SHORT).show();
}
}
});
}
如果您想更新一个引用中的 2 个或多个表,请执行此操作:-
friendsMap.put(userFriendListTableName + "/" + currentUserId + "/" + userId + "/friend_id", userId);
friendsMap.put(userFriendListTableName + "/" + currentUserId + "/" + userId + "/acceptDate", String.valueOf(System.currentTimeMillis()));
friendsMap.put(userFriendListTableName + "/" + userId + "/" + currentUserId + "/friend_id", currentUserId);
friendsMap.put(userFriendListTableName + "/" + userId + "/" + currentUserId + "/acceptDate", String.valueOf(System.currentTimeMillis()));
friendsMap.put(friendRequestTableName + "/" + currentUserId + "/" + userId, null);
friendsMap.put(friendRequestTableName + "/" + userId + "/" + currentUserId, null);
mRootRef.updateChildren(friendsMap, new DatabaseReference.CompletionListener() {
@Override
public void onComplete(@Nullable DatabaseError databaseError, @NonNull DatabaseReference databaseReference) {
if (databaseError != null) {
Toast.makeText(context, "" + databaseError.getMessage(), Toast.LENGTH_SHORT).show();
}
}
});
}
@Override
public void onCancelled(@NonNull DatabaseError databaseError) {
Toast.makeText(context, "" + databaseError.getMessage(), Toast.LENGTH_SHORT).show();
}
});
在此,我将从好友请求列表中删除这两个用户,并将这两个用户添加到好友列表中
关于java - 删除多个父节点上的特定子节点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55661820/
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 我们不允许提问寻求书籍、工具、软件库等的推荐。您可以编辑问题,以便用事实和引用来回答。 关闭 4 年前。
正如您在 this travis.yml 中看到的那样文件,我的代码依赖于一些第三方库,我在构建项目之前将它们安装在远程系统上。 Travis 每次推送提交时都会下载并构建这些库,这可以避免吗?我的意
我是一名优秀的程序员,十分优秀!