我正在嘗試查詢子節點值,但我不知道父鍵,我想查詢Firebase適配器。我想下面積訪問用戶ID節點,但我不知道父母即-KqPJMsjSb5CbPcq4nXv 這裏的ID記錄的快照: 當您不知道父鍵時查詢子值
0
A
回答
0
1
請使用此代碼:
DatabaseReference rootRef = FirebaseDatabase.getInstance().getReference();
DatabaseReference userIdRef = rootRef.child("areas").child(userId);
ValueEventListener eventListener = new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
for(DataSnapshot ds : dataSnapshot.getChildren()) {
String areaId = ds.child("areaId").getValue(String.class);
Boolean booked = ds.child("booked").getValue(Boolean.class);
Integer bookingHour = ds.child("bookingHour").getValue(Integer.class);
//and so on
Log.d("TAG", areaId + "/" + booked + "/" + bookingHour);
}
}
@Override
public void onCancelled(DatabaseError databaseError) {}
};
userIdRef.addListenerForSingleValueEvent(eventListener);
在這userId
是說,不缺少用戶的ID。
當您對Firebase數據庫執行查詢時,可能會有多個結果。 因此,快照包含這些結果的列表。即使只有一個結果,快照也會包含一個結果列表。
相關問題
- 1. 當您不知道按鍵時從對象獲取值
- 2. 當父鍵未知時按值查詢MongoDB
- 3. 如何查詢通過特定的值火力數據庫不知道父鍵
- 4. 不知道鍵查詢和更新子文檔
- 5. 子查詢訪問父值
- 6. 訪問 - 當父窗體打開時不查詢子窗體
- 7. 當父鍵未知時,在嵌套的NSDictionary中查找對象?
- 8. 去當按鍵知道
- 9. 當我不知道值的類型時枚舉IDictionary的鍵和值
- 10. 僅當知道兄弟的值時才查找屬性的值
- 11. Elasticsearch查詢 - 並沒有返回值(當我知道它應該)
- 12. 當孩子更改屬性值時通知父級
- 13. 查詢SQL查詢以查找父 - 子 - 子 - 父關係?
- 14. SQL查詢父子
- 15. 如何通過父鍵查詢時獲取子元素AngularFire2
- 16. 當我不知道鍵值時,如何從JSON響應中檢索密鑰?
- 17. 當使用SELECT返回時,父查詢沒有看到子查詢的列*
- 18. 我不知道如何編寫查詢
- 19. 查詢不知道類的ontologie
- 20. 不知道如何寫這個查詢
- 21. 指定的查詢不知道:byShipmentNumber
- 22. 我不知道如何查詢
- 23. 子查詢返回多個值。當子查詢如下
- 24. 查詢子記錄時查詢父關係
- 25. 簡單的父/子查詢
- 26. 查詢JavaScript父子對象
- 27. SQL父子表查詢
- 28. MySQL查詢對父子
- 29. 父子鏈的SQL查詢
- 30. 當您不知道範圍名稱時,從VB.net寫入Excel文件
你@AlexMamo提到的解決方案無效,不要忘記區域後面有一個關鍵節點 – Pheonix
你爲什麼這麼想,你有沒有測試它?我可以說它肯定會有效。正如你可能看到的那樣,DatabaseReference userIdRef是'rootRef.child(「areas」)。child(userId)',這意味着我們在樹的'userId'節點右下。使用'getChildren()'意味着我們從那裏獲取所有的孩子。因爲在這個照顧下只有一個孩子,我們可以從該節點獲得所有兒童,例如areaId,預訂,預訂時間等等。 –
它工作嗎,一切都好嗎? –