我使用Firebase作为Flutter项目的后端。我需要在一个事务中写入多个表。现在我有:
await _databaseReference
.collection('user_data')
.document(uid)
.setData(userData);
await _databaseReference
.collection('company_data')
.document(uid)
.setData(companyData);
但这是2个事务,因此1个可能成功结束,但另一个可能失败,我希望防止发生这种情况。
多谢了。
1条答案
按热度按时间5sxhfpxr1#
必须使用一个Batched Write,它“是作为一个单元执行的一系列写操作”,如下所示:
按照下面Rahul Vyas的注解,注意一个批处理可以同时包含一些
set
、update
和delete
操作,这些操作将在不同的文档(可能在不同的集合中,如上所示)上执行。