我最终会有几周时间,密钥从1
开始,下周密钥将为2
然后3
等等
我想写一个查询,它给我上周的数据(具有最高编号键的那一周)
我在python脚本中有这行代码:
rtn = root.child('bedroom').child('weeks').order_by_key().limit_to_last(1).get()
print(rtn)
这是打印出来的:
[None, {'date_time': '2018-06-08 19:38:41.634010', 'temperature': '21'}]
为什么None
位于数组的开头?我认为它总是在这里吗?我想在数组的第二个位置使用数据。但如果它不总是在数组的第二个位置,那么我的代码就会破坏。我认为该查询将返回一个大小为1的数组。
我想当我测试时,我确实看到数组只有1个元素,json结构作为第一个元素,但我无法证实这一点。
答案 0 :(得分:0)
当您使用数字键时(与此类似),Firebase可能会将您的数据解释为数组。要了解有关详情,请阅读Best Practices: Arrays in Firebase。
如果此数组强制对您的应用有疑问,我建议在数字前加上固定字符串,例如: "week_1
"甚至更好"week_01
(因为那样你可以过滤几周的范围)。