![見出し画像](https://assets.st-note.com/production/uploads/images/72502064/rectangle_large_type_2_c275d7134ecb88372055e638eacb98fe.png?width=1200)
【Part3 Homeページ】チャットアプリを作りながら学ぶゼロワン講座
こんにちは。
今回の記事では、Homeページの作成について説明していきます。
仕様が変わってしまっているところや、もしわからないところがあれば概要欄から飛べるゼロワンのフォーラムで質問してください。
それでは、始めましょう!
Homeページのフロントエンド
まず、ページのレイアウトを『垂直』にします。
『テキスト』をドラッグしてきて、「Home」と入力します。
Homeページではトークルームの一覧(相手の名前一覧)を表示したいので、『コンテナ』から『垂直リピーター』をドラッグしてきます。
『コンテンツ』は、『動的』から『を検索する』を選択します。
『テーブル』は『User』を選択し、『フィルター』は「id<>現在のユーザー's id」と設定しましょう。
『リミット』は、とりあえず「99」としておきます。
![画像2](https://assets.st-note.com/production/uploads/images/72496845/picture_pc_95b8cb0c03872f1b047fd766004b1c8e.png?width=1200)
次に、配置した垂直リピーターの中に、同じく『コンテナ』から『水平ボックス』をドラッグしてきましょう。そして、その中に『画像』と『テキスト』を横並びで配置してください。
画像の『ソース』は『動的』で「toUrl(セル's item's user_image)」と設定します。
同様にテキストの『コンテンツ』は『動的』で「セル's item's user_name」とします。
![画像3](https://assets.st-note.com/production/uploads/images/72496957/picture_pc_9f8bec87ff480a7025d7308102aa5eac.png?width=1200)
『外観』の詳細な設定に関しては、ここでは省略させていただきます。
Homeページのワークフロー
Homeページのワークフローについて解説していきます。
先程配置した『水平ボックス』を選択し、『ワークフロー』の『新規作成』をクリックします。『名前』を「go_message」、『イベント』を「click」と設定しましょう。
『OK』をクリックすると、『ワークフロー』の画面に遷移します。
『フローコントロール』の中の『ブランチ』を、既にある『TRIGGER』の下に配置します。
『条件』は、「length(Roomを検索する's member)=0」と設定します。この「Roomを検索する」では、『フィルター』に「userA_id=現在のユーザー's id」「userB_id=セル's item's id」と設定し、『リミット』は「1」にします。
![画像5](https://assets.st-note.com/production/uploads/images/72497388/picture_pc_da0fe62e95e7f10661c43fcacadf767d.png?width=1200)
![画像4](https://assets.st-note.com/production/uploads/images/72497373/picture_pc_6f784f742ad2e15b112c2142f8038a4c.png?width=1200)
その下に、また『ブランチ』を配置します。
『条件』は、「length(Roomを検索する's member)=0」と設定します。この「Roomを検索する」では、『フィルター』に「userA_id=セル's item's id」「userB_id=現在のユーザー's id」と設定し、『リミット』は「1」にします。
![画像6](https://assets.st-note.com/production/uploads/images/72497554/picture_pc_54154f9ad5202b89634793fed1bd4cf3.png?width=1200)
![画像9](https://assets.st-note.com/production/uploads/images/72498009/picture_pc_d2cfdc6e38adea49c3d70b72ec89a7b4.png?width=1200)
その下に、『データベース』から、『ドキュメントを作成する』を配置します。
『テーブル』は「Room」を選択し、「userA_id 現在のユーザー's id」「userB_id セル's item's id」を追加します。
![画像9](https://assets.st-note.com/production/uploads/images/72497999/picture_pc_708f4c9c34f0f036baa75466d5154180.png?width=1200)
そして、その下に『Go to (Push)』を2つ横並びに配置します。
まず、左側のエレメントから設定しましょう。
『URL』には「/message-usera」と入力します。
次に、Query paramsの設定を行います。Query paramsを使うことによって、遷移先のページに、現在のページの情報を引き継ぐことができます。
ここでは、セルのユーザーのidと名前、そしてRoomのidを引き継ぎます。
「user_id」「user_name」「room_id」というキーを追加しましょう。
そして、それぞれ「セル's item's id」「セル's item's user_name」「Roomを検索する's id」と設定します。
この「Roomを検索する」では、『フィルター』に「userA_id=現在のユーザー's id」「userB_id=セル's item's id」と設定し、『リミット』は「1」にします。
![画像9](https://assets.st-note.com/production/uploads/images/72497817/picture_pc_99d9c87fa5093d89ef4341af3f9a4222.png?width=1200)
次に、右側のエレメントも設定しましょう。
『URL』には「/message-userb」と入力します。
次に、Query paramsの設定を行います。
「user_id」「user_name」「room_id」というキーを追加しましょう。
そして、それぞれ「セル's item's id」「セル's item's user_name」「Roomを検索する's id」と設定します。
この「Roomを検索する」では、『フィルター』に「userA_id=セル's item's id」「userB_id=現在のユーザー's id」と設定し、『リミット』は「1」にします。
線は以下のように繋ぎます。この画像のようになればOKです。
![画像1](https://assets.st-note.com/production/uploads/images/70186186/picture_pc_93a9adf8d8b60351d77e79be8e5cd6ad.png?width=1200)
Part3は以上です!お疲れ様でした!
最後まで読んでいただき、ありがとうございます。
次回の記事では、Message_userAページ、Message_userBページの作成を解説します!
__________________________________
ゼロワンフォーラム:https://www.forum.thezeroone.io/
今回解説した動画:https://www.youtube.com/watch?v=8i62DeKo6Ks
ゼロワンのHP:https://www.zeroone.today/
こんにちは、ゼロワンエバンジェリストの大内です!
今回は、チャットアプリを作りながら学ぶゼロワン講座のPart3、Homeページ作成の説明をしました。少々複雑な箇所もありますが、本記事と動画を見ながら試行錯誤してみてください!
わからないことがあれば、フォーラム等でご質問ください。
__________________________________