Firestoreのサブコレクションからドキュメントを取得する方法(Web / JavaScript)
最終更新日:
阿部 隼也
AIイノベーションズ 代表取締役社長 | x.com/ai_abe_shunya
Firestoreでサブコレクションからドキュメント(データ)を取得する方法を紹介します。
Firebaseを初期化する
まず、Firebaseの初期化(initialize)をする必要がありますが、
Firebaseの初期化についてのコードは省略します。
サブコレクションからドキュメントを取得する
下記のコードでドキュメントを取得できます。
下記の例では、親コレクションとなるusersがあり、そのサブコレクションとしてpostsがある場合を想定しています。
import { doc, getDoc } from 'firebase/firestore'
const userId = 'user123' // 'user123'というIDのユーザーが1件あるとする
const postId = 'post123' // 'post123'というIDの記事が1件あるとする
// ドキュメントを取得する
let post;
const postDocRef = doc(db, 'users', userId, 'posts', postId);
const postDocSnap = await getDoc(postRef);
if (postDocSnap.exists()) {
// ドキュメントが存在する場合
post = await postDocSnap.data();
} else {
// ドキュメントが存在しない場合
console.error('そのIDのドキュメントは存在しません。');
}
ブログ