构建Firebase Firestore以实现电子商务过滤功能

时间:2017-10-22 13:14:37

标签: firebase google-cloud-firestore

正如标题所说,我希望通过完全基于Firebase Firestore的电子商务应用程序实现过滤功能。

过滤器可能过于复杂 - 带有

的产品列表(例如手机)
- price range between 10k - 20k
- Brands among Samsung, Motorola and Apple
- OS should be Marshmallow, Nougat or Oreo
- RAM should be 3GB, 4GB or 6GB

由于无法直接进行复杂查询,因此很明显我需要重新构建数据库。请帮助我重组部分,或者如果您有任何其他建议,我很乐意听到。

截至目前我已经完成了

FirebaseFirestore.getInstance()
    .collection("products")
    .whereGreaterThanOrEqualTo("price", 10000)
    .whereLessThanOrEqualTo("price", 20000)
    .whereEqualTo("brand", "Samsung")
    .whereEqualTo("brand", "Motorola")
    .whereEqualTo("brand", "Apple")
    .whereEqualTo("OS", "Marshmallow")
    .whereEqualTo("OS", "Nougat")
    .whereEqualTo("OS", "Oreo")
    .whereGreaterThanOrEqualTo("RAM", 3)

显然它不起作用,因为Firestore支持逻辑AND ,它既不支持逻辑OR 也不支持两者。那么有什么可以重构的数据建模方法来实现呢?

0 个答案:

没有答案