# 現在Tinderのようなマッチングアプリをbubbleで作っていて、DB構造に関して問題を抱えていま......

**URL:** <https://www.nocode-faq.com/t/topic/898>\
**Category:** bubble\
**Tags:** バックエンドデータベースフロントエンドツ\
**Created:** [2021 年 2 月 2 日午前 11:29 UTC](https://www.nocode-faq.com/t/topic/898 "2021-02-02T11:29:16Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![Question\_user](https://avatars.discourse-cdn.com/v4/letter/q/53a042/32.png) [@Question\_user](https://www.nocode-faq.com/u/Question_user)\
**Post date:** [2021 年 2 月 2 日午前 11:29 UTC](https://www.nocode-faq.com/t/topic/898/1 "2021-02-02T11:29:16Z")

</div>

現在Tinderのようなマッチングアプリをbubbleで作っていて、DB構造に関して問題を抱えています。

現在、Userテーブルにそれぞれ個人の情報を、MatchingテーブルにUserテーブルをネストして、2人ずつのグループを作るようにして、マッチング度数を数値で表し、初期値は0ですが双方が良いねを押したら1になるように作ろうとしています。  
その場合、ユーザーを順番にフリックで表示するのは可能なのですが、一度マッチングした相手も出てきてしまう可能性があります。

通常のwebアプリであれば、ログインユーザーのIDでMatchingテーブルの中から検索をかけて、その相手となるユーザーは表示しないようにして、それ以外のUserテーブルの全ユーザーを表示、表示する前にランダム整数を作成してその順番通りに表示（ランダム表示）、ということができるとは思うのですが、bubbleだとその点がうまくいかず困っています。（テーブルが異なるので対象を絞ることができない）

つまり主に以下の二点が解決できません。  
・ランダム表示ができない  
・一度マッチングしたユーザーも出てきてしまう。  
これらを打破するような方法はあるでしょうか？

DBはこんな感じです。  
＜画像添付＞

---

<div class="post-metadata">

**Author:** ![Answer\_user](https://avatars.discourse-cdn.com/v4/letter/a/eb8c5e/32.png) [@Answer\_user](https://www.nocode-faq.com/u/Answer_user)\
**Post date:** [2021 年 2 月 2 日午前 11:29 UTC](https://www.nocode-faq.com/t/topic/898/2 "2021-02-02T11:29:17Z")

</div>

質問者  
このmembersの中には2人のUserが存在する想定して、それぞれグループが発生する想定です。両方が良いねを押すとそのstausが+1ずつされ、合計2になります。そうなるとマッチング成立で出せるかなとは思います。  
ただ、マッチング以前の表示の部分でどうやって全Userから該当のユーザーを削除して表示をしようかと悩んでいます。（自分を抜くだけなら:minusitemでcurrent userをぬけば終わりですが、過去に良いねを送った人、マッチングした人も弾きたいので…）

回答者  
確かに難しいですね。  
こんなのはどうですか？

> **[Bubble Editor - Ai-ks](https://bubble.io/page?type=page&name=tinder&id=ai-k&tab=tabs-1)**
>
> Build stuff without code and launch a startup without a tech-cofounder! Bubble is a visual programing language. Instead of typing code, use a visual editor to build applications.

Userに、LIKE(list of User型)をして、LIKEスワイプで相手を追加。  
when 相手のLIKEに自分が含まれている場合、マッチング。  
filterで、過去にLIKEしたユーザーを除く。  
minus itemで自分を除く。

質問者  
あーなるほど、テーブルはUserのみで用意するということですね。  
そしてfilterを駆使すると…  
ありがとうございます！  
また、bubbleではスワイプできないので今回はボタンで良いねを押すかと思ってたんですが、プラグインあったんですね！  
それでやってみます。  
助かりました！

回答者  
さらに最後に sortでrandom選べばぐちゃぐちゃに出てきます

## 参考画像

 ![スクリーンショット 2020-10-28 12.09.56.png](https://us1.discourse-cdn.com/flex020/uploads/ncc_forum/original/2X/7/7039f45079df615eb2b79ba49ae47e303a2895d9.jpeg)

 ![スクリーンショット 2020-10-28 12.10.01.png](https://us1.discourse-cdn.com/flex020/uploads/ncc_forum/original/2X/0/008dfdbf56a306812c9fa3954f8227835a7b2b3b.jpeg)

## 参考URL

> **[Bubble Editor - Ai-ks](https://bubble.io/page?type=page&name=tinder&id=ai-k&tab=tabs-1)**
>
> Build stuff without code and launch a startup without a tech-cofounder! Bubble is a visual programing language. Instead of typing code, use a visual editor to build applications.
