【发布时间】:2018-12-12 19:31:48
【问题描述】:
是否可以获取 ID 包含特定值的所有文档。我正在使用 Angular 7。
我试过 db.collection('items').where.. 但这不受支持。
例子
(collection)
/items
(doc)
/green apple
/red apple
/banana
/melon
我能否对集合“items”进行查询,以检索 ID 包含“apple”的所有文档。我似乎找不到可行的解决方案。
【问题讨论】:
-
您是说您只想通过其唯一 ID 获取文档吗?无需查询即可。
-
我会遵从@DougStevenson,但我的建议是在文档中创建一个与名称匹配的字段(并且可能跳过自定义名称以支持谷歌生成的乱码),然后查询在该名称字段值上。
-
@danh 正如您所说,当您没有唯一可识别的字符串来表示文档时,“乱码”实际上很重要。您可以在需要时使用它,但如果您已经拥有唯一 ID,则没有义务。也就是说,想出唯一的字符串并不总是那么容易或方便。
-
谢谢@DougStevenson。我的意思不是贬义的胡言乱语,更异想天开地指代系统生成的唯一 ID。我认为 op 确实需要一个用于查询的字段,而不是(或除此之外)一个可读的名称。
-
Firestore 允许前缀匹配,但没有“包含”运算符。因此,除非“apple”在开头,否则您要查找的内容是不可能通过查询实现的。见stackoverflow.com/questions/47115422/…
标签: javascript google-cloud-firestore