0
Firebaseのデータ構造については、次のように処理します。firebaseデータ構造を作成する際に問題が発生しました
ユーザは思考を記録する方法を作成できます。彼らは彼らが望むところでそれを呼び出すことができます。 Mary Chen
はjournal
を渡し、Mr Owner
はそれに名前を付けたい(パラメータを渡す)log
を渡します。 Firebaseは、これらの名前を、ユーザが名前をつけようとしたどのパラメータにでも命名する独自のツリーとして保存します。
別のツリーが表示されます。whenLoggedIn + \(parameter)
。このツリーはyyyy-mm-dd
の日付を対応するポストに保存します。
例:
{
"uids": {
"D0Ez8edYhIbTuUfmIeO0KOq5xVB3": {
"friends": {
"IbTuUfmIeO0KOBr5Q4gAqD": true
},
"name": "Mary Chen",
"journal": {
"entry 1- trader joes": "went to store! :)",
"entry 2- ate sushi": "took out the garbage today then got free sushi from trader joes!!!"
},
"whenLoggedInJournal": {
"1": "1997-12-25",
"2": "2016-2-23"
}
},
"L8kBHaGBr5Q4gAqDOhFY29Okepm1": {
"friends": {
"D0Ez8edYhIbTuUfmIeO0KOq5xVB3": true
},
"name": "Mr Owner",
"journal": {
"log 1": "spotted some drunkard in my store",
"log 2": "drainage pipe clogged with tomatos, I suspect the drunkard",
"log 3": "did inventory check, 1 less sushi box, suspect the drunkard"
},
"whenLoggedInLog": {
"1": "1997-12-25",
"2": "2016-2-27",
"3": "2016-4-2"
}
}
}
}
私はFirebaseガイドの「構造化データ」を読んで、私は一度にツリーに追加する方法を把握していませんでした。私はまた、平坦化されたデータセットを達成したい。私がやっていることにはそれが必要でしょうか?
[これはどうしてでしょうか?](http://imgur.com/XFXyX3S )別のログ日付を追加すると '.childByAppendingPath(" whenLoggedInJournals ")'になりますか?どのuidを追加するかをどのように指定しますか?データを取得するときにどのユーザーからデータを取得するかを指定する方法は? – user5812721
@ user5812721すべてがユーザーのUIDに結び付けられています。そのユーザがログインすると、FirebaseのauthData.uid変数からuidを知ることができます。そこから、そのuidを介してデータを簡単に照会または書き込むことができます。ですから、3番目の日付をloggedInに追加すると、.childByAppendingPath( "whenLoggedInJournals/uid/3")。setValue(todayDate)に "3"が追加されます: "2016-6-25"。副作用として、Firebaseでは一般的にフラットな構造が良いが、データを平坦化する理由があるはずです。それはただの原因にしないでください。ジャーナルエントリはタイムスタンプを付けられ、単一ノード内のエントリを含むことができる。 – Jay