【问题标题】:Updating a Document on Firestore with a field value with space in it, does not update it in DB使用包含空格的字段值更新 Firestore 上的文档,不会在 DB 中更新它
【发布时间】:2021-07-29 06:57:58
【问题描述】:

可能措辞不佳。

我有一个名为 users 的 Firestore 集合,我想使用 Python 使用数据 json 和 Python 中的 Firebase 管理 SDK 更新特定 ID 的文档。这是代码

uname = l[1]
usermail = l[4]

tags = ["xxxyyy"]

datajson = {"emailVerified": "False",
    "status":"active",
    "name": uname,
    "uid":"",
    "tag":tags,
    "email": usermail,
    }
print(datajson)

try:
    datajson["uid"] = userid  (From some other code)
    db.collection('users').document(data["Doc ID"]).set(datajson)

每当我使用名称“Wolfgang Alpha”运行此程序时,数据库都会更新为“名称:名称”作为属性,而不是“名称:Wolfgang Alpha”。我认为它与空格有关的原因是因为我尝试使用一个单词名称并且它有效。

我在 Python3.7 上使用它。请帮忙。我在这里遗漏了什么吗?

【问题讨论】:

    标签: python python-3.x firebase google-cloud-firestore


    【解决方案1】:

    Firestore 允许您在文档中编写各种数据类型,包括字符串、布尔值、数字、日期、空值以及嵌套数组和对象。正如您在doc examples 上看到的,接受字符串值并保留间距。

    我建议您先检查 uname 的值是否正确,然后考虑将您的 Firebase Admin SDK 更新到最新版本,尽管 Admin SDK 支持 Python 3.6+,因此这不太可能是 SDK 问题。

    【讨论】:

    • 感谢您的回答。我想到了。这是一个旧的云功能,它把事情搞砸了。这是间歇性的,因为有时我的代码会先执行,而有时云函数会。真是愚蠢的错误。
    猜你喜欢
    • 1970-01-01
    • 2018-06-05
    • 2020-03-23
    • 1970-01-01
    • 2018-11-22
    • 1970-01-01
    • 1970-01-01
    • 2020-02-11
    • 2021-09-15
    相关资源
    最近更新 更多