选定项目上的微调器的firebase查询

时间:2017-04-22 06:18:18

标签: android firebase firebase-realtime-database

我有两个旋转器,用于服务和员工。

在我的应用程序中,我想让用户选择服务列表,然后我只为可用于该服务的员工填写员工微调器

我的员工类和结构类似:

  "Employees" : {
        "eid1" : {
          "name" : "john",
          "services" : {
 //john has 3
            "sid1" : "true",
            "sid2" : "true",
            "sid3" : "true"        
          },
        "eid2" : {
          "name" : "david",
          "services" : {
 //david only has 1
            "sid2" : "true"                   
          }        
        }

我的服务结构是:

"Services" : {
        "sid1" : {
          "name" : "read"                    
          },
        "sid2" : {
          "name" : "write"                  
          },
        "sid2" : {
          "name" : "erase"                  
          }           
        }

示例:如果我选择service2,查询将找到john和david。如果我选择service1,那么只会获取john并将其添加到我的微调器中。

我混淆了我应该使用的查询,我测试了一些,包括这个,但是当我在调试模式下运行它时总是跳过:

       mDatabase.child("Employees").orderByChild("services").equalTo(serviceList.get(position).getName()).addValueEventListener(new ValueEventListener() {
        @Override
        public void onDataChange(DataSnapshot dataSnapshot) {
            for (DataSnapshot dsp : dataSnapshot.getChildren()) {

                //System.out.println(dsp.getKey());
            }

        }

0 个答案:

没有答案