ホームページ >ウェブフロントエンド >jsチュートリアル >Cloud Firestore ドキュメントからサブコレクション名を取得するにはどうすればよいですか?
Cloud Firestore のドキュメントからサブコレクションの名前を取得することは、複雑なドキュメント構造を扱う場合の一般的なタスクです。単純な操作のように思えるかもしれませんが、現在、Web およびモバイル プラットフォームのクライアント 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 サイトの他の関連記事を参照してください。