FirebaseでReference型のデータを扱いたいのですが,どのような構造にすれば良いか分かりません.
実現したいのは次のようなデータです.
JSON:
1// usersモデル 2{ 3 name: string, 4 age: number, 5} 6 7// booksモデル 8{ 9 title: string, 10 isbn: string, 11}
Userが複数のBookを持っているという関係をFirestoreで構造化したいです.
usersコレクションとbooksコレクションを作成するところまでは理解できるのですが,この場合,usersコレクションのドキュメントの中にさらにreference型のbooksコレクションを作成するということになるのでしょうか.それとも,usersコレクションのドキュメントのフィールドにreference型のbooksを作成するのでしょうか.
/users/{userId}/books/{bookId}
のような形になることを予想しているのですが,フロントエンドで値を取ることができません.
データの構造は画像のようになっています.
↑usersコレクションの構造
↑usersコレクションのドキュメントにreference型のbooksコレクションを追加したもの
フロントエンド
JavaScript:
1import React, { useEffect } from 'react' 2import { db } from './firebase' 3 4const Sample = () => { 5 const fetchData = () => { 6 const userRef = db.collection('users').doc('0LMFsQseArNpIekLNkcR') 7 userRef.get().then((res) => { 8 console.log(res.data()) // 問題なく表示される 9 }) 10 const bookRef = userRef.collection('books').doc('E4QxUFqMtmqwCw0yNWCF') 11 bookRef.get().then((res) => { 12 console.log(res) // 理解不能なデータが表示される※ 13 }) 14 } 15 16 useEffect(() => { 17 fetchData() 18 }, []) 19 20 return <div>sample<div> 21}
※ 理解不能なデータはn {o_: t, U_: i}
といったもので,中身を見たのですが,理解できませんでした.
疑わしい箇所や解決策などを教えていただけると幸いです.
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。