ホームページ >ウェブフロントエンド >jsチュートリアル >Cloud Firestore ドキュメントからサブコレクション名を取得するにはどうすればよいですか?

Cloud Firestore ドキュメントからサブコレクション名を取得するにはどうすればよいですか?

Patricia Arquette
Patricia Arquetteオリジナル
2024-11-30 12:20:13696ブラウズ

How Can I Retrieve Subcollection Names from a Cloud Firestore Document?

Cloud Firestore ドキュメントからサブコレクション名を取得する方法

Cloud Firestore のドキュメントからサブコレクションの名前を取得することは、複雑なドキュメント構造を扱う場合の一般的なタスクです。単純な操作のように思えるかもしれませんが、現在、Web およびモバイル プラットフォームのクライアント SDK ではサポートされていません。

制限事項

公式ドキュメントによると、クライアントから直接サブコレクション名を取得しています。 SDKは実現不可能です。ドキュメントには、この機能は管理タスクが実行される信頼できるサーバー環境用に予約する必要があると明示的に記載されています。

この制限が存在する理由

この制限の主な理由はセキュリティです。サブコレクション名は機密情報である可能性があり、クライアント SDK でサブコレクション名に直接アクセスするとセキュリティ リスクが生じる可能性があります。

サーバー側 SDK のソリューション

ドキュメント内のサブコレクションをリストする必要がある場合は、次を使用します。 Node.js などのサーバー側 SDK では、ListCollectionIds メソッドを利用できます。以下に例を示します。

const {Firestore, Timestamp} = require('@google-cloud/firestore');
const firestore = new Firestore();

firestore.collection('rootCollection/aDocument/subCollection1').listCollections().then((collections) => {
  for (const collection of collections) {
    console.log(`Found subcollection: ${collection.id}`);
  }
});

サブコレクション名の予測的な管理

クライアント SDK ではサブコレクション名を直接取得できないため、それに応じてデータ構造を設計することが重要です。直接検索を必要とせずにサブコレクションを効果的に管理できるように、サブコレクションに予測可能な命名規則を使用することを検討してください。

以上がCloud Firestore ドキュメントからサブコレクション名を取得するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。