gpt4 book ai didi

javascript - 更新firestore中文档的createdAt和updatedAt日期字段的正确方法是什么?

转载 作者:行者123 更新时间:2023-12-03 23:11:10 24 4
gpt4 key购买 nike

我有一个名为 的文档集学校我们为其保留了名为 的字段创建于 更新于 .我分别使用 onCreate 和 onUpdate 触发器中的 Firestore 云触发器函数更新这些字段。
我在这里面临的问题是,这些字段更新将不必要地再次调用 onUpdate 触发器。为了处理这些,我编写了一个名为 的附加函数。跳过更新触发器

const excludeFields = ["createdAt", "UpdatedAt"]

shouldSkipOnUpdateTrigger = function(docDataOld, docDataNew, excludeFields){
for(let i of excludeFields){
if (docDataOld[i] !== docDataNew[i])
return true;
}
return false;
}
有没有更好的方法可以处理这种情况以避免那些额外的触发器?

最佳答案

我发现的最简单的方法是完全避免对 Cloud Functions 的需求,并让客户端包含 lastUpdated每次写入的值都带有 server-side timestamp .
您可以通过检查以下内容在安全规则中强制执行此操作:

allow update: if request.resource.data.lastUpdated = request.time

关于javascript - 更新firestore中文档的createdAt和updatedAt日期字段的正确方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56936298/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com