【问题标题】:Not able to pass variable in Firebase query-data无法在 Firebase 查询数据中传递变量
【发布时间】:2018-12-14 11:20:56
【问题描述】:

根据https://firebase.google.com/docs/firestore/query-data/get-data,我正在尝试在 python 中使用以下代码并在查询中传递变量。

举个例子

docs = db.collection(u'cities').where(u'capital', u'==', True).get()

for doc in docs:
    print(u'{} => {}'.format(doc.id, doc.to_dict()))

我试图通过尝试替换变量 1 来比较它的值并返回文档 ID 来执行以下操作。输出不返回任何响应。

import firebase_admin
from firebase_admin import credentials
from firebase_admin import firestore

cred = credentials.Certificate('/root/key.json')
firebase_admin.initialize_app(cred)

db = firestore.client()

variable1 = 9129392

docs = db.collection(u'company').where(u'companyid', u'==', variable1).get()

for doc in docs:
    print(u'{} => {}'.format(doc.id, doc.to_dict()))

谁能告诉我如何解决这个问题。谢谢

【问题讨论】:

  • u的值是多少?

标签: python firebase google-cloud-firestore


【解决方案1】:

在 Firestore 中,检查 companyid 是 String 还是 Long(数字)。

大多数人将其存储为字符串 - 如果是这种情况,则需要将 variable1 声明为字符串并在其间加上引号:

variable1 = "9129392"

如果您希望它是整数,请确保它在 Firestore 中存储为数字类型。

【讨论】:

    猜你喜欢
    • 2021-11-24
    • 1970-01-01
    • 2021-12-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-10-23
    • 2022-10-05
    相关资源
    最近更新 更多