如何在不覆盖的情况下将值添加到Firebase Firestore?


问题内容

我有两个活动,我分别从这两个活动向Firestore添加数据。但是,每当我向Firestore添加第二个活动数据时,它就会覆盖第一个活动数据。我在以下两个活动中使用了以下代码:

 firebaseFirestore.collection("Users").document(user_id).set(data)

如何停止覆盖?我想将两个“活动”数据保存在同一文件夹中user_id


问题答案:

我建议您再添加一个文档或集合,以便它可以为单个用户存储多个数据值。
您可以为两个活动创建文档参考:

firebaseFirestore.collection("Users").document(user_id+"/acitivity1").set(data);
//and  
firebaseFirestore.collection("Users").document(user_id+"/acitivity2").set(data);

或者,您可以为其创建一个子集合:

firebaseFirestore.collection("Users").document(user_id)
                  .collection("Activities").document("acitivity1").set(data);
//and
firebaseFirestore.collection("Users").document(user_id)
                  .collection("Activities").document("acitivity2").set(data);

更多关于分层数据存在