在Firebase中构造状态节点

在Firebase中构造状态节点

问题描述:

为了存储具有唯一键值的所有州和地区,我写了以下内容,但数据总是被覆盖。在Firebase中构造状态节点

Map<String, Object> dist = new HashMap<>(); 
dist.put(item.getDistrict().toLowerCase(), item.getDistrict()); 

ref.child("States") 
    .child(state.toLowerCase()) 
    .child("Districts") 
    .setValue(dist, callback); 



States 
    - andhrapradesh 
    -name: "Andhra Pradesh" 
    -Districts 
     - vizag 
      - name : Vizag 
     - eastgodavari 
      - name: East Godavari 

如何正确推送数据第一次。下一次,我必须根据州的选择一次性得到所有州,我必须在UI中显示这些区。

任何人都可以帮助我解决这个问题吗?

要更新现有的地区,使用updateChildren()

ref.child("States") 
    .child(state.toLowerCase()) 
    .child("Districts") 
    .updateChildren(dist, callback); 

我强烈建议你阅读的火力地堡guidereference文档。

你可以给该节点使用push方法上的任何火力数据库引用由火力生成一个唯一的密钥,但如果你想使用自己的关键是确保您使用updateChildren方法,而不是setValue方法