如果我迭代user
集合中的每个user_ref = db.collection(u'users')
for user_collection in user_ref.get():
print(user_collection.id, file = sys.stderr)
,我会正确地打印出每个user.id:
user.id
现在,当我尝试在用户集合中的每个文档中迭代集合时,打印user_ref = db.collection(u'users')
for user_collection in user_ref.get():
print(user_collection.id, file = sys.stderr)
s2_ref = user_ref.document(user_collection.id).collection(u'preferences')
for s2 in s2_ref.get():
try:
print(s2.id, file = sys.stderr)
except google.cloud.exceptions.NotFound:
pass
的原始迭代不会完全运行:
var orgChart = new getOrgChart(peopleElement, {
primaryFields: ["name", "title", "phone", "mail"],
photoFields: ["image"],
expandToLevel: 100,
layout: getOrgChart.MIXED_HIERARCHY_RIGHT_LINKS
});
我已经包含了绕过空集合的异常。
如何正确完成迭代?
答案 0 :(得分:0)
我只需要为第一组结果创建一个数组,然后分别迭代每个id:
user_id_array = []
for user_collection in user_ref.get():
user_id_array.append(user_collection.id)
for user_id in user_id_array:
try:
suscription_ref = doc_ref.document(user_id).collection(u'suscriptions').document(user_id).get()
print(suscription_ref.id,file = sys.stderr)
except google.cloud.exceptions.NotFound:
pass
需要更多时间,但它会让你到那儿。