Как проверить, существует ли дочерний элемент в ветви в базе данных, чтобы я мог возвращать значения, основанные на этом дочернем элементе - PullRequest
0 голосов
/ 08 апреля 2020

Пользовательский интерфейс с использованием кода, который я упоминаю Моя база данных настроена так:

root

-Students
    -user1
        -name
        -pass
        -etc...
    -user2

-Admin
    -admin1

Я хочу проверить, текущий ли Пользователь является администратором или студентом, поэтому я могу go к определенной ссылке в базе данных

Это мой код:

    user = FirebaseAuth.getInstance().getCurrentUser();
    reff = FirebaseDatabase.getInstance().getReference().child("Students").child(user.getUid());

    reff.addValueEventListener(new ValueEventListener() {
        @Override
        public void onDataChange(@NonNull DataSnapshot dataSnapshot) {

            name = dataSnapshot.child("name").getValue().toString();
            lastName = dataSnapshot.child("lastName").getValue().toString();
            studentID = dataSnapshot.child("studentID").getValue().toString();
            email = dataSnapshot.child("email").getValue().toString();
            password = dataSnapshot.child("password").getValue().toString();
            confirmPassword = dataSnapshot.child("password").getValue().toString();
            inputStudentID.getEditText().setText(studentID);
            inputName.getEditText().setText(name);
            inputLastName.getEditText().setText(lastName);
            inputEmail.getEditText().setText(email);
            inputPassword.getEditText().setText(password);
            inputConfirmPassword.getEditText().setText(confirmPassword);


        }

, чтобы получить информацию о студентах, которую я должен сделать

FirebaseDatabase.getInstance().getReference().child("Students").child(user.getUid());

но если бы я вошел в систему как администратор, я бы go зашел в эту ветку и отобразил бы их информацию. Я уже пытался использовать оператор if с

dataSnapshot.child("Students").hasChild(user.getUID)

со ссылкой

FirebaseDatabase.getInstance().getReference()

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

Интерфейс для администратора и ученика с кодом на рисунке 3

Код для изображения 2

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