Firebase根据ID列表筛选产品列表

时间:2017-10-24 13:28:51

标签: java android database firebase

我正在创建一个应用程序,这个问题让我头疼了一段时间 我想根据firebase中另一个节点上的id数组过滤产品节点。 我试过查询但查询只显示一个对象 当我尝试其他方式时,它什么都没有 Node 1 Node 2 我想在node1中获取id并用于在node2中过滤

node1 node2

我不知道还能做什么 谢谢你的帮助

1 个答案:

答案 0 :(得分:0)

您需要做的就是从节点1获取Id,然后在First查询中使用Nested Query for node 2。并使用orderbyKey()orderByChild("id").equals(key)

获取其ID
mdatabaseRef.child("item").orderBykey().equals(id).addValueEventListener(new ValueEventListener() {
   @Override     
 public void onDataChange(DataSnapshot dataSnapshot) {
  String value = (String) dataSnapshot.getValue();
  getValue(value);
   }

private void getValue(String key){
     mdatabaseRef.child("product").orderBykey().equals(key).SingleValueEventListener(new ValueEventListener() {
      @Override     
      public void onDataChange(DataSnapshot dataSnapshot) {
         for (DataSnapshot child: dataSnapshot.getChildren()){
            String key = child.getKey();
           Object object = postsnapshot.getValue(Object.class);;
             }