我似乎无法从Firebase数据库的用户ID下引用该子级

时间:2019-03-17 16:47:40

标签: java android firebase firebase-realtime-database

我尝试了所有方式来引用子代(用户名),UID是为从Firebase数据库在文本视图中显示字符串值而生成的,但它不会仅仅显示

数据库:

enter image description here

library(tidyverse)
data %>% 
   group_by(condition) %>%
   summarise_at(vars(mpg, cyl, wt), list(MEAN = ~ mean(.), 
                                    SE = ~sd(.)/sqrt(n()))) %>% 
   gather(key, val, -condition) %>% 
   separate(key, into = c("key1", "key2")) %>%        
   unite(cond, key2, condition, sep=".") %>% 
   spread(cond, val) %>%
   column_to_rownames('key1')
#    MEAN.control MEAN.treat SE.control  SE.treat
#cyl     6.500000   5.875000  0.3872983 0.4989572
#mpg    18.200000  21.981250  1.0369024 1.7720332
#wt      3.560875   2.873625  0.2044885 0.2571034

TextView:

enter image description here

它总是转到其他部分,我在做什么错了?

1 个答案:

答案 0 :(得分:2)

您在代码中引用的孩子不存在于数据库中,这就是为什么它总是转到else部分的原因。

DatabaseReference mDatabaseReference = FirebaseDatabase.getInstance().getReference().child("Users").child("uid").child("username");

在数据库中,您没有一个名为uid的孩子,在节点Users下您拥有不同的用户ID,因此您需要执行以下操作:

FirebaseUser user = FirebaseAuth.getInstance().getCurrentUser();
String userId     = user.getUid();
DatabaseReference mDatabaseReference = FirebaseDatabase.getInstance().getReference().child("Users").child(userId).child("username");

这将检索当前登录用户的ID,并且您将能够检索Username