FLUTTER Firestore当合并用于更新字段时创建一个新文档

时间:2020-05-28 14:30:38

标签: firebase flutter dart google-cloud-firestore

我正在尝试使用merge:true更新文档中的字段。 它不仅无法更新文档,还因为我仅使用更新的字段创建了具有相同documentID的重复文档 代码

    await Firestore.instance
    .collection('QuizProfile')
    .document(id)
    .setData({
  'Score': ['asdfg'],
}, merge: true);
}

在此处添加屏幕截图

Original Document created initially

Duplicate document created after using setData with merge:true

1 个答案:

答案 0 :(得分:1)

setDatamerge:true将更新文档中的字段或创建文档(如果不存在),而updateData将更新字段,但如果文档不存在将失败

如果id等于Firestore中的原始文档ID,则可以使用updateData

   await Firestore.instance
    .collection('QuizProfile')
    .document(id)
    .updateData({
  'Score': ['asdfg'],
});
}