Android firebase как извлечь дочерние данные под 2 случайными ключами - PullRequest
0 голосов
/ 24 ноября 2018

Как отобразить RequestsID в обзоре реселлера, только когда stallID = 1?Каким должен быть мой DatabaseReference?

enter image description here

обновление:

enter image description here

enter image description here

1 Ответ

0 голосов
/ 24 ноября 2018

Ваша структура базы данных не будет поддерживать orderByChild() с верхнего узла.Таким образом, вам нужно установить ссылку на вашу базу данных до узла food, а затем вы можете использовать запрос orderByChild(), чтобы найти дочерние элементы с определенным stallID.

. В коде это будет выглядеть примерно так:

DatabaseReference ref = FirebaseDatabase.getInstance().getReference().child("Requests").child("1542..").child("foods");

  ref.orderByChild("stallID").equalTo(stallIDYouWant).addListenerForSingleValueEvent(new ValueEventListener() {
                        @Override
                        public void onDataChange(@NonNull DataSnapshot dataSnapshot) {

                            for (DataSnapshot ds : dataSnapshot.getChildren()){
                                 // do here what you wanted
                            }

                        }

                        @Override
                        public void onCancelled(@NonNull DatabaseError databaseError) { 
                              // ToDo: don't ignore this, do something for errors

                        }
                  )};               

Это на самом деле не очень вам поможет, потому что вам придется устанавливать это для каждого уникального идентификатора в вашей структуре базы данных.

Так что лучше сделать здесьваша база данных отличается.Чтобы узнать, как сделать вашу структуру подходящей для этой операции, см. этот ответ.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...