2016-12-11 25 views
0

配列やオブジェクトだけではなく、オブジェクトを格納する方が良いでしょうか。私はユニークなキーを作りたいと思っていましたが、配列が面倒なことになると思います。firebaseに格納するオブジェクト対配列

私の他の質問は、その部屋の中の特定の部屋やそれにリンクしている部屋の外にある別の部屋のユーザーのリストを保持する方が良いでしょうか?

+1

Firebaseのドキュメントを参照し、オンラインチュートリアルから学習してください。なぜなら、皆さんがFirebaseを初めて知っていることを理解しているからです。 Firebaseは、RDBMSではなくNOSqlデータベースです。ここではさまざまなことが異なっています。テーブルなし、主キーなし、外部キーなし、配列なし。それは単なるオブジェクトです。私はここから始めました。https://www.youtube.com/playlist?list=PLGCjwl1RrtcTXrWuRTa59RyRmQ4OedWrt –

+0

私は比較的新しいですが、全く新しいものではありません。実際にはキーがあり、実際にはfirebaseに配列があります –

+0

私は今までに両方を使っていましたが、配列は以下の答えで見られるようには見えません。 –

答えて

2

本当に必要な場合以外は、配列を使用しないでください。それらの使用は状況によっては最高ですが、通常はデータを保存するためのより良い方法があります。それはFirebaseで

Retrieving an array

アレイのコードでは、配列のようではありませんビットを助けるかもしれない、これスウィフト質問への答えを参照してください。挿入、更新、削除はありません。これらの機能の個々の要素へのアクセスはありません。変更がある場合は、配列全体を書き直して使用が制限されている必要があります。

質問の第2部:Firebaseの典型的な設計パターンは、/ usersノードを活用し、他のノードのユーザーid(uid)への参照を保持することです。

users 
    firebase_uid_0 
    name: "Biff" 
    email: "[email protected]" 
    firebase_uid_1 
    name: "Leroy" 
    email: "[email protected]" 

この構造および使用はFirebaseドキュメントだけでなく、ここにStackOverflowの上の多数回に覆われています。そう

言われて、答えはあなたのユースケースに実際に依存することが可能な構造

rooms 
    room_0 
    users 
    firebase_uid_0: true 
    room_1 
    users 
    firebase_uid_1: true 
    room_2 
    users 
    firebase_uid_0: true 
    firebase_uid_1: true 

room_0 has uid_0 in it but not uid_1 
room_1 has uid_1 in it but not uid_0 
room_2 has both users in it 

。構造が私が提案したものよりも深い場合は、データを非正規化することができます。より深いレベルでクエリを実行する必要がある場合は、代替構造を検討することもできます。

+0

ありがとう、これはたくさんの意味があります。うん、私はちょうどオブジェクトにこだわるつもりです。 –

関連する問題