新云Firestore构建第一个扑动应用程序。我有以下用例:
我正在制作一款带有模式、桥牌和挑战的游戏。每个模式都有独立的牌组,每个挑战都有一个牌组。例句:
Mode A -> Deck 1,2,3
Mode B -> Deck 4,5,6
Mode C -> Deck 7,8,9
Challenge 1 -> Deck 1
Challenge 2 -> Deck 2
Challenge x -> Deck 8
我应该在这里使用文档引用,还是最好添加一个字段,如decknumber作为Firestore集合的int ?
如果需要执行以下查询:
Select * from deck where modennumber =…,和Select * from challenges where deckNumber = ....
那么你应该简单地定义两个单独的集合,一个叫做"deck";另一个叫做"挑战"。在第一个集合中,您应该添加包含类型为数字的名为"modennumber"的字段的文档;在第二个集合中,您应该添加包含类型为数字的名为"decknumber"的字段的文档。在代码中应该是这样的:
await Firestore.instance.collection('decks').where("modeNumber", isEqualTo: value)
和
await Firestore.instance.collection('challenges').where("deckNumber", isEqualTo: value)