263

新しい Firebase Firestore を調べているところです。これには というデータ型が含まれていますreference。これが何をするのかは私には明らかではありません。

  • 外部キーのようなものですか?
  • 他の場所にあるコレクションを指すために使用できますか?
  • referenceが実際の参照である場合、クエリに使用できますか? たとえば、userId をテキスト フィールドに格納する代わりに、ユーザーを直接指す参照を使用できますか? このユーザー参照をクエリに使用できますか?
4

8 に答える 8

2

Reference データ型を使用しない場合は、すべてのドキュメントを更新する必要があります。

たとえば、「カテゴリ」「製品」の 2 つのコレクションがあり、次のようにカテゴリ名「果物」カテゴリに格納し、製品に「リンゴ」「レモン」のすべてのドキュメントを格納したとします。ただし、Categories でカテゴリ名「Fruits」を更新する場合は、productsの「Apple」「Lemon」のすべてのドキュメントでカテゴリ「Fruits」も更新する必要があります。

collection | document | field

categories > 67f60ad3 > name: "Fruits"
collection | document | field

  products > 32d410a7 > name: "Apple", category: "Fruits"
             58d16c57 > name: "Lemon", category: "Fruits"

ただし、productsの「Apple」「Lemon」のすべてのドキュメントにカテゴリの「Fruits」の参照を保存すると、カテゴリ名を更新するときに「Apple」「Lemon」のすべてのドキュメントを更新する必要はありません。カテゴリ内の「果物」 :

collection | document | field

  products > 32d410a7 > name: "Apple", category: categories/67f60ad3
             58d16c57 > name: "Lemon", category: categories/67f60ad3

これがReference データ型の良さです。

于 2021-12-15T18:28:28.203 に答える