【问题标题】:Flutter - Firebase - Query by list item value [duplicate]Flutter - Firebase - 按列表项值查询[重复]
【发布时间】:2020-12-30 20:30:07
【问题描述】:

我有一个可用性列表,并希望根据键 31 的值进行查询,例如 > 0。我没有找到正确的语法来实现它。我来了

flutter: Paths must not contain '~', '*', '/', '[', or ']'.

有没有办法让它工作?还是我需要重新考虑查询?

final Query nextSlot = FirebaseFirestore.instance
        .collection('locations')
        .where('availability{31}', isGreaterThan: 0);

..does not give error but gives 0 results..

        .where('availability[31]', isGreaterThan: 0);
        .where('availability/31', isGreaterThan: 0);
.. returns the format error.

新年快乐,谢谢!

【问题讨论】:

  • 这里实际上没有列表类型字段 - 您有一个映射,其键是字符串形式的数字(所有映射键始终被视为字符串,即使它们看起来像数字) .您可以使用点表示法根据地图字段的值过滤查询。
  • 什么都试过了,只有一个点。赞赏!

标签: firebase flutter google-cloud-firestore


【解决方案1】:

我很确定 firebase 和 Dart 使用点符号,所以你需要这个:

final Query nextSlot = FirebaseFirestore.instance
        .collection('locations')
        .where('availability.31', isGreaterThan: 0);

【讨论】:

    猜你喜欢
    • 2018-06-02
    • 2021-09-01
    • 2018-06-30
    • 2020-12-03
    • 2022-11-23
    • 2023-04-08
    • 2019-10-16
    • 1970-01-01
    • 2021-06-17
    相关资源
    最近更新 更多