Firebaseデータベースの作業を開始したばかりですが、データベースをどのように構造化するのかちょっと混乱しています。次の例では、私はユーザーオブジェクトとグループオブジェクトを持っています。各ユーザーは複数のグループに属し、各グループは複数のユーザーを持つことができます。提案されたデータベース構造は、 "Structure Your Database"に従って以下の通りです。Firebaseのデータとリレーションシップのリスト
{
"users": {
"alovelace": {
"name": "Ada Lovelace",
"groups": {
"techpioneers": true,
"womentechmakers": true
}
}
},
"groups": {
"techpioneers": {
"name": "Historical Tech Pioneers",
"startDate": "24-04-1820",
"members": {
"alovelace": true,
"ghopper": true,
"eclarke": true
}
}
}
}
のは、私は、グループ名と開始日を、私のアプリでは、リスト内のすべてのグループを表示したいとしましょう。どのようにしてそのデータベースコールを作成しますか?ユーザーオブジェクトにはグループのIDだけが含まれているので、グループの名前と開始日を見つけるために、グループごとにデータベースを別々に呼び出す必要がありますか?リストに多数のグループがある場合、それは多くの呼び出しになります。私のグループには他の多くの情報も含まれている可能性があります。 1回の呼び出しで、ユーザーのグループリスト内のすべてのグループを取得できますか?
一つ私が持っていたのに名前が含まれており、ユーザーの下のオブジェクトのグループで日付を開始することでした:
"users": {
"alovelace": {
"name": "Ada Lovelace",
"groups": {
"techpioneers":{
"name": "Historical Tech Pioneers",
"startDate": "24-04-1820"
},
"womentechmakers":{
"name": "Women in Technology",
"startDate": "13-10-1823"
}
}
}
}
}
が、このソリューションは、重複データの多くを追加しているようです。また、名前を更新したい場合は、複数の場所でそれを行う必要があります。グループを含むスポンサー組織オブジェクトを追加して、それらをリストしたいとします。その後、情報を更新する3つの場所があります。どうすればこの問題を解決できますか?