2017-08-04 49 views
0

我嘗試使用多位置更新來更改Realtime Database中的值,並讓一位聽衆一次性執行所有更改。Firebase多位置更新 - 設置空值兒童

這就是我試圖做:

DatabaseReference mDatabase = FirebaseDatabase.getInstance().getReference(); 
Map data = new HashMap(); 

data.put("Users/"+senderEmail+"/friends_requests_sent/"+receiverEmail,""); 
data.put("Users/"+receiverEmail+"/friends_requests_received/"+senderEmail,""); 

mDatabase.updateChildren(data, new DatabaseReference.CompletionListener() { 
    @Override 
    public void onComplete(DatabaseError databaseError, DatabaseReference databaseReference) { 

     if (databaseError!=null) 
      showConnectionErrorToast(); 


     else{ 
      Context context=getContext(); 
      Toast.makeText(context, 
        context.getString(R.string.friend_request_was_sent), Toast.LENGTH_SHORT).show(); 
     } 


    } 
}); 

孩子正在增加就好了(receiverEmail和SENDEREMAIL),但它迫使我把其中的值,雖然我不想。 我希望電子郵件將是這個孩子的鑰匙,沒有價值。

這是可能的嗎? 如果不是,最好的選擇是什麼?

回答

0

無法在Firebase數據庫中存儲沒有值的密鑰。如果您確實沒有存儲價值,請考慮使用標記值,如true"TBD"