2014-10-30 11 views
12

से प्रविष्टियों को कैसे हटाएं मैं फ़ायरबेस के कार्यों की खोज कर रहा हूं, मुझे जावा कोड का उपयोग करके फायरबेस से नोड्स या प्रविष्टियों को हटाने के तरीके में परेशानी हो रही है? मैंने उनके एपीआई की खोज की .. वेब संस्करण निकालें() फ़ंक्शन प्रदान करता है, लेकिन जावा नहीं है?फायरबेस

उत्तर

25

Firebase वस्तु पर एक removeValue() विधि नहीं है:

Documentation

स्थापना null लिए किसी स्थान का मूल्य अनिवार्य रूप से संरचना से नोड निकाल देता है।

+0

nulling एक मूल्य के कारण अपने डीबी denormalizing लिए अलग अलग रास्तों पर कई हटाता सुनिश्चित करने के लिए बहुत काम में आता एक कतरना है। – TheFuquan

4

हालांकि @jsfrocha उत्तर पूरी तरह से सही है, यह ध्यान रखना महत्वपूर्ण है कि यदि आप लेनदेन का उपयोग कर रहे हैं, तो जब आप डेटा हटा रहे हैं तो एक अच्छा अभ्यास है, तो आप एक MutableData ऑब्जेक्ट के माध्यम से डेटा तक पहुंचते हैं, जिस स्थिति में आप ' टी removeValue(...) विधि है इसलिए आपको setValue(null) का उपयोग करना चाहिए।

यहाँ ...

firebase.child(path).runTransaction(new Transaction.Handler() { 
    public Transaction.Result doTransaction(MutableData mutableData) { 
     mutableData.setValue(null); // This removes the node. 
     return Transaction.success(mutableData); 
    } 
    public void onComplete(FirebaseError error, boolean b, DataSnapshot data) { 
     // Handle completion 
    } 
});