###前提
twitterのようなiOSアプリを作成しており、バックエンドにFirebaseを使用しています。
ユーザーが存在し、投稿機能のある、いわゆるソーシャルアプリです。
###実現したいこと
twitterのようなユーザーの検索機能を実装をしたいと思っています。
###疑問点
ユーザー検索機能を実装するに際して、Firebase上にある現状のデータ構造を修正する必要があると考えています。そこで、自分は以下に示すようなデータ構造に修正しようと思っているのですが、よりよい修正方法があるかお聞きしたいです。
posts
ツリーはその配下に固有idをもち、その中にそれぞれの投稿情報が格納されています。
users
ツリーはその配下に固有idをもち、その中にそれぞれのユーザー情報が格納されています。(ログイン方法はtwitter,facebook, github, mailを検討しています)
修正点は2点です。
①: ユーザーデータの中にuserIDを格納するようにする。(ログイン時にユーザーに決めてもらう。重複がないかチェックし、固有の値とする。)
②:userIDs
ツリーを作成し、ユーザーのID:ユーザー情報をもつツリーのキー
という情報を格納する。
検索時にはuserIDs
の中を検索し、該当するユーザーIDがあればそのユーザー情報を表示しようと思っています。(部分検索(tを入力するとtを含むユーザーID一覧が表示される)ができれば良いが、現状そのようなAPIはなさそうなので、検索結果としては、完全一致の1件のみか検索結果なし、の2
パターンを考えています。)
以上のような仕様を検討しているのですが、より良い解決策がありましたら、ぜひ教えていただきたいです。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/01/18 11:41