繁体   English   中英

如何正确查询firebase / angularfire中的列表?

[英]How to correctly query list in firebase/angularfire?

我有这个结构:

在此处输入图片说明

我发现了这一点: https : //github.com/angular/angularfire2/blob/master/docs/4-querying-lists.md ,而且我阅读了firebase文档。

我尝试这样:

return this.db.list(`${this.API_EVENTS_PATH}`, {
  query: {
    equalTo: {
      value: 'sharikov.vladislav@gmail.com',
      key: 'from'
    }
  }
});

这什么也没有:空数组。 为什么?

另一个问题是:如何按2个字段过滤项目? 例如,我需要from=sharikov.vladislav@gmail.com&status=ACCEPTED

FB如何做到这一点?

对于第一个问题。

在使用EqualTo过滤器之前,首先应该有一个OrderBy过滤器...该OrderBy过滤器告诉查询EqualTo应当引用哪个字段...因此您的查询应如下所示。

let path = this.API_EVENTS_PATH;
return db.list(path , {
  query: {
    orderByChild: 'from',
    equalTo: 'sharikov.vladislav@gmail.com',
  }
});

关于第二个问题

如何按2个字段过滤项目

在像Firebase这样的Nosql数据库中,通常只允许按1个字段进行过滤。 考虑到如何组织数据库,其他所有操作都已完成。 观看此Firebase 视频 ,该视频向您展示如何在Firebase数据库上执行常规SQL查询。 请享用

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM