我有一个要求,以了解不同的标签在我的Firestore json文档。标签命名为:d1,d2,d3等,并有一些值,如'自动','品牌','手动'等。我希望能够将这些键(d1,d2,d3)重命名为更好的键,如'品牌名称','类别'等,这取决于这些键在我的集合中的所有文档中的值。我如何确定每个键(父标签)在Firestore文档中表示什么?这可以通过创建索引来实现吗?
所以我的理解是,你想计算一个文档集合中给定字段的最频繁的值是什么。你不能只是做一个查询,就像你在SQL中,有没有在Firestore计数功能。
我看到两个选项。
在创建文档时,您可以递增一个计数器,之后根据这个计数器进行排序。计数器的结构方式取决于你的要求。
a) 它们可以全部放在一个文档中
b) 或者你可以有一个计数器集合,每个字段有一个文件(d1, d2, d3)。
c) 或者你可以每个字段有一个集合,然后每个值有一个计数器(最可扩展)。
d) ...
EDIT: 关于选项2的更多细节
计数器的创建:每创建一个文档,你都会递增计数器。例如:对于选项2.b和一个新文档={d1: "Automatic, d2: "Brand },你可以像这样递增计数器。
colref.doc("d1").set({Automatic: firebase.firestore.FieldValue.increment(1), { merge: true }
colref.doc("d2").set({Brand: firebase.firestore.FieldValue.increment(1), { merge: true }
而在一般情况下。
colref.doc(field).set({[fieldvalue]: firebase.firestore.FieldValue.increment(1), { merge: true }