我正在使用Firebase实时数据库在市场应用程序中开发购物车和订购屏幕。

我的订单结构:



我要在这里根据状态检索所有用户的所有订单!这是一个好的结构吗?

最佳答案

我通过更改订单结构解决了这个问题:


我删除了紧随其后的userId节点:orders / uid
订单结构变为订单/ order_id / userId





我将订单安全规则更改为:

"Orders":{
  ".read" : true,
    "$id":{
      ".write" : "newData.child('userId').val() === auth.uid",
      ".read" : "root.child('Orders').child($id).child('userId').val() === auth.uid",
      }
}



现在,我可以通过方法orderByChild()equalTo()查询我想要的

07-27 14:05