假设我有一个employees
集合,其中每个员工都有一个文档,并且我想记录对单个员工文档所做的所有更改。我正在考虑以下方法:-
- 有一个
pendingEmployeeWrites
只允许客户端创建文档的集合。这里的每个文档都会有一个employeeId
字段(这个 id 是在客户端为新员工生成的)。 - 每当创建此类文档时都会调用云函数,然后验证数据。如果有效,则集合中的
employeeId
文档employees
将被此数据覆盖。否则,pendingEmployeeWrites
文档将更新为设置isFailed
为true
. 客户端应用程序只允许从employees
集合中读取。
保持pendingEmployeeWrites
为平面集合而不是子集合允许我提取用户所做的所有更改以及特定文档的所有更改。这种方法有意义还是我应该考虑更好的方法?