Home > Back-end >  how to add new data to existing map in firebase flutter
how to add new data to existing map in firebase flutter

Time:05-21

here is the firebase document data

enter image description here

I want to add a new map value to the purchased-id. this is the current code

FirebaseFirestore.instance.collection('users').doc(userID).set({
  'purchased-id': {
    widget.head: widget.id,
  }
});               

but with this code the map value is replaced, how do I add another map value to the existing map

like this

enter image description here

CodePudding user response:

I think need merge: true to update the map with its new value.

FirebaseFirestore.instance.collection('users').doc(userID).set({
  'purchased-id': {
    widget.head: widget.id,
  }
}, SetOptions(merge: true));

Reference: https://firebase.google.com/docs/firestore/manage-data/add-data#update_fields_in_nested_objects

Also to differentiate with .set and .update, have a look at this answer: https://stackoverflow.com/a/47554197/11566161

  • Related