簡體   English   中英

它如何從該數據庫結構中檢索用戶數據?

[英]How do it retrieve User data from this database structure?

我正在為學校項目制作應用程序。 我希望當學生登錄時,他們應該看到他們的數據(ID, NAME, SESSION, PROGRAM)而當任何教師登錄時,他們應該看到他們節點中的數據。 他們可以成功登錄,只是我不知道如何為屬於2個不同節點的用戶獲取不同的數據。 我是android和Firebase的新手,所以任何明確的答案將不勝感激。

這是我的數據庫結構:

要解決此問題,請使用以下代碼行:

String uid = FirebaseAuth.getInstance().getCurrentUser().getUid();
DatabaseReference rootRef = FirebaseDatabase.getInstance().getReference();
DatabaseReference uidRef = rootRef.child("USERS").child(uid);
ValueEventListener valueEventListener = new ValueEventListener() {
    @Override
    public void onDataChange(DataSnapshot dataSnapshot) {
        String id = ds.child("ID").getValue(String.class);
        String name = ds.child("NAME").getValue(String.class);
        String program = ds.child("PROGRAM").getValue(String.class);
        String session = ds.child("SESSION").getValue(String.class);
        Log.d(TAG, id + " / " + name + " / " + program + " / " + session);
    }

    @Override
    public void onCancelled(@NonNull DatabaseError databaseError) {
        Log.d(TAG, databaseError.getMessage());
    }
};
uidRef.addListenerForSingleValueEvent(valueEventListener);

您的logcat中的輸出將是:

02 / SA / MCI / SP17

如果要從另一個節點獲取數據,只需相應地更改引用即可。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM