2017-05-14 8 views
1

私はjavascriptを使ってウェブサイトを作成しており、ユーザーは同様の興味を持つ他のユーザーを見つけることができます。FirebaseのMany to Many Match

dogs 
cats 
books 

、データベースに私はそうのような興味を持つ多くのユーザーがあります:

USER 1 USER 2 USER 3 
apples school apple 
cats  books  dogs 
pears  cats  lions 

を次に私が希望することができるようにすることです私は、例えば興味を持っている一人のユーザーを持っているしたいと思います最も類似した関心を持っているユーザーを見つけます。例えば、この場合、ユーザ2は一致する2つの関心事を有するので、ユーザ2は返されなければならないが、残りは似ているだけである。そして、私の興味リストは10から200の利益の間のどこかにあるので、それらをすべてループすることはできません。誰かが解決策を持っているかどうか教えてください。これは私にとっては非常に困難でした。

これ以上の説明が必要な場合はお知らせください。 おかげ

UPDATE これは私のデータベースは、現在のように見えるものです。

user 
    interests 
    apple: true 
    pear: true 
    book: true 
    school: true 

答えて

0

私が興味を持った人には分かりましたが、私のデータベースはカテゴリに関心を持つように再フォーマットしました。そして、私はそれらの下にその関心を持っていた各人をそのカテゴリーに列挙しました。

0

Firebaseドキュメントでオーバースケーラブルなデータを作成する方法の例をよく見てください: https://firebase.google.com/docs/database/web/structure-data#fanoutヒント:「グループは、」あなたの「利益」です。

+0

私はデータベースでそれを行う方法を理解しましたが、私の問題はそれにアクセスしています。複数のアイテムを他の人のリストの複数のアイテムに照合してデータにアクセスするにはどうすればよいですか。 – TomMcmann

+0

依存すると、データベース構造はどのようになりますか? – louisvno

+0

私はそれがユーザーに多くの興味を持っている子供の興味を持っているそれを構造化しました。元の投稿を更新して構造を表示しました – TomMcmann