我正在使用Pyrebase访问我的Firebase数据库。我的数据库目前的结构如下:
- users
- 12345
name: "Kevin"
company: "Nike"
12345
是用户的ID,公司是用户所属的公司。我目前正在尝试吸引所有属于耐克的用户。根据Pyrebase文档,执行以下操作应该可以:
db.child("users").order_by_child("company").equal_to("Nike").get().val()
但是我收到错误"error" : "orderBy must be a valid JSON encoded path"
。有谁知道为什么会这样?
答案 0 :(得分:0)
Pyrebase库出了点问题。这是问题的link。
解决方案是在您的应用中添加这些代码行。
Compilation Error
Error: Invalid CSS after "$bg-prm: #2caddd": expected 1 selector or at-rule, was "{}"
on line 1 of sass/Users/hassan/Desktop/JS_test/style.sass
>> $bg-prm: #2caddd {}
---------------^
答案 1 :(得分:0)
我设法解决了这个问题,因为我还使用了 rest api 来连接我的 firebase 实时数据库。我将通过示例演示错误所在:
当我没有用逗号包裹 orderBy
值(子项、键等)和其他查询参数时,改造(我正在使用)给我错误/错误请求。
这是错误/错误的请求网址:
https://yourfirebaseprojecturl.com/Users.json?orderBy=username&startAt=lifeofkevin
看,orderBy
值和 startAt
值,在这种情况下,username
和 lifeofkevin
,没有用逗号包裹,像这样 "username"
和 "lifeofkevin"
,所以它会返回 orderBy
必须是一个有效的 JSON 编码路径。
为了工作,我需要用逗号包裹我的 orderBy
和其他查询参数,以便 Firebase 返回您想要使用的数据。
这是第二个例子,正确的例子:
https://yourfirebaseprojecturl.com/Users.json?orderBy="username"&startAt="gang"
现在注意,区别? orderBy
和 startAt
的值都用逗号包裹,因此现在它们将返回您想要处理的数据。