Firestore要求我创建已经存在的索引

时间:2019-05-18 03:56:53

标签: flutter google-cloud-firestore

我正在尝试对评论进行分页。前10条评论加载正常,但接下来的(当查询包含startAfterDocument时)返回错误,如:

Query(comments where movie_id == 1041047 order by -created, __name__) failed: Status{code=FAILED_PRECONDITION, description=The query requires an index. You can create it here: https://console.firebase.google.com/project/.......

但是该索引已经存在,我之前创建过。而且,如果我遵循建议链接,Firebase控制台也会告诉我同样的情况:该索引存在。

  Future<List<DocumentSnapshot>> _loadPageFrom(
      int index, DocumentSnapshot lastDoc) async {
    Query query = Firestore.instance
        .collection('comments')
        .where('movie_id', isEqualTo: movieID)
        .orderBy('created', descending: true);

    if (lastDoc != null) query = query.startAfterDocument(lastDoc);
    final snapshot = await query.limit(10).getDocuments();

    return snapshot.documents;
  }

这是什么问题?

1 个答案:

答案 0 :(得分:9)

如果您最近删除了索引,则需要稍等片刻,直到将其从项目中删除为止,之后您便可以再次创建它。