firebase 函数 (python) - 如何定义将特定字段添加到新创建的文档的触发器函数

问题描述 投票:0回答:1

我有一个 flutter flow 应用程序,可以使用 google 提供商对用户进行身份验证。 我正在尝试设置一个 firebase 触发函数,该函数将添加布尔字段“isMoreInfoRequired”,让它等于 true,并将其添加到新创建的文档中。 使用 Gemini,我创建了一个如下所示的函数:


@on_document_created(document="users/{userId}")
def onUserCreated(event: Event[DocumentSnapshot]) -> None:
  new_value = event.data.to_dict()
  userId = new_value.id
  if "isMoreInfoNeeded" not in new_value:  # Check if property exists
    new_value["isMoreInfoNeeded"] = True
  # Update the document with the modified data
  db = firestore.client()
  doc_ref = db.collection("users").document(userId)
  doc_ref.set(new_value)

该函数已正确部署,但根本没有添加该字段。 有谁知道这个功能如何实现吗?

除了新文档的其他字段之外,我希望文档还具有“isMoreInfoRequired”字段

python firebase google-cloud-firestore google-cloud-functions
1个回答
0
投票

问题在于 new_value.id 不是获取 userId 的正确方法。相反,您应该使用 event.reference.id 来获取文档 ID。

© www.soinside.com 2019 - 2024. All rights reserved.