MENU

3.7章 ユーザーの一覧ページの作成

bubbleチュートリアルver1第3.7章 ユーザーの一覧ページの作成

目次-全章

第1章 bubbleについて(bubbleの基礎知識からアカウントの作成、アプリ開発まで)
第2章 かんたんなアプリケーションを作成
第3章 ページレイアウト(UIデザイン)を作成
第4章 データベースの設計
第5章 ユーザー登録、ログインを試してみる
第6章 ユーザーログイン時の処理を実装してみる
第7章 ユーザー情報を更新、削除(退会、解約)できるようにしてみる
第8章 メールアドレス認証を実装してみる
第9章 パスワードの再設定、パスワードリセット機能を実装してみる
第10章 ユーザーがツイートできるようにする
第11章 ユーザーのフォロー機能、タイムライン表示機能をつくってみる
まとめ
目次

3.7.1 ユーザー一覧の作成

ページには、Groupと同様に何らかのデータを設定することができます。

ユーザー一覧のページでは、ユーザー情報をURLで受け取った場合そのユーザーのページを表示し、ユーザー情報が存在しない場合ユーザー検索画面を表示するように作成していきます。

図3.7.1.1 ユーザー一覧完成例
ページURL内容
usersユーザ一覧、検索画面
users?{パラメータ}ユーザー一覧、タブ切り替え
図3.7.1.1 各データ一覧

ページを作成する

ページをクローンして作成する

ユーザー一覧ページもマイページと構成が似ているため、マイページをクローンします。

なお、ページ名に「user」は指定できません。bubble内部で利用することができない名称がいくつか存在します(index、reset_pwなど)。ここではページ名をusersとします。

図3.7.1.2 新規ページ作成例

usersページではContainer layoutはHeader、Bodyを縦に並べるため、Columnを選択します。Row gapはhomeと同様に34pxに設定します。

図3.7.2 usersの設定

usersページのHeader、Bodyの設定は、mypageとほぼ同じです。そのためここでは説明を割愛します。マイページのレスポンシブ対応を確認して、同じように設定してください。

指定したユーザーのマイページを作成する

最初に、URLからユーザー情報を取得した場合のページを作っていきます。

ページを跨いでデータを引き渡す場合、パスとして付与する方法とクエリとして付与する方法があります。

パスとしてページにデータを付与する

ページのプロパティエディタのType of contentに値を設定すると、ページにデータを保持させることができます。

図3.7.3 Type of contentについて

この方法の場合、URLのパス内に https://(アプリ名).bubbleapps.io/users/(データ) としてページにデータを渡すことができます。

例えば Type of contentをUsersにすると、https://(アプリ名).bubbleapps.io/users/(User’s unique id) とすることで、usersページにユーザー情報を渡すことができます。usersページ内では、Current Page Userという値で、URLに指定したユーザー情報を取得できるようになります。

ただし、この形にするとusersページはユーザー情報が必須になり、ユーザー情報を空にすることができません。今回作成するusersページは、ユーザー情報がある場合とない場合で表示を切り替えているため、もう一つの方法を使います。

クエリでページにデータを付与する

クエリ文字列(URLパラメータ)とは、サーバーに情報を送るためにURLの末尾につけ足す文字列(変数)のことです。「?」をURLの末尾につけ、その次に「パラメータ=値」をつけます。複数のパラメータをつけたい場合は「&」を使用します。この形式で、サーバーに送信したいデータをURLにつけ加えることが可能です。

bubbleでは、https://(アプリ名).bubbleapps.io/users?user=(Users unique id) などとしてページにデータを渡すことができます。

この形式を利用する場合、パスを利用する場合とは異なりページ自体に設定は不要です。

クエリから情報を取得する

usersページでは、クエリをuser=(Users unique id)として表示したいユーザー情報を受け取ることにします。

クエリに設定された値をページ内で利用するには、「Get data from page URL」というプロパティを利用します。

グループBodyの内容は「パラメータで指定されたユーザー」のマイページのような内容になるため、グループBodyのプロパティエディタで、

Type of content : User

Data source : Get data from page URL

Data sourceで「Get data from page URL」を選択します。

図3.7.4 「Body」の設定

もう一つプロパティエディタが表示されます。この中でパラメータがどういう値を持っているかを設定します。

Type : Patamater

Parameter name : user

Type : User

と設定します。Parameter nameは任意の値を利用でき、URLの一部になります。パラメータで受け取るTypeはテキストや数字だけでなく、データベースのタイプとしても設定できるので、ここではUserタイプを指定します。

図3.7.5 「Get user from page URL」の設定

これで、グループBodyではURLパラメータから受け取ったユーザー情報を取得できるようになりました。

Group Userを編集する

Group Userに「プロフィールを見る」リンクを追加します。Link Followをコピー&ペーストをし、名称と表示テキストを変更します。

編集する、ログアウトボタンをフォローする、フォロー解除に変更し、ボタン名称も変更しておきます。

図3.7.6 「Group UserInfo」の配置修正

ページの各エレメントの位置を調整して、ユーザー一覧の作成は完了です。

図3.7.7 ユーザー一覧完成例

3.7.2 ユーザー検索の作成

第3章7の1で作成したページに、パラメータがない場合は検索画面を表示するようにしていきます。

図3.7.8 ユーザー検索完成例

ユーザー検索の作成

ユーザー検索のグループを作成する

パラメータが存在しないときに表示するグループを作成します。

今回は、グループBodyをコピー&ペーストして修正していきます。

図3.7.9 グループBodyをコピー&ペースト

編集しやすいようにグループ「Body」は非表示にしておきます。

コピーされたグループ「Body copy」を「Search Body」に変更します。クローンしたBodyにはコピー元のレスポンシブ対応が適用されています。

Search Bodyはユーザー情報が不要なので、Type of contentとData sourceを空にしておきます。

図3.7.10 Bodyを非表示にする

検索ボックスを作る

Group User内のエレメントを全て削除し、Group Userの要素名をGroup Searchに変更します。Type of content、Data sourceを空にします。

図3.7.11 「Group Search」の設定

検索用のInputエレメントとButtonエレメントを設置します。

図3.7.12 各エレメントの配置

Grourp Searchの横幅を最大600pxとし、親要素の中央に配置します。

図3.7.13 Group Searchの設定

このように最小値を設定しなかった場合、画面に入りきる最大サイズに自動で設定されます。スマートフォンなどで画面幅いっぱいに表示したいエレメントは最小値を設定しなくてもかまいません。

ここでは、上下にPaddingを設定しています。

図3.7.14 Group SearchのPadding設定

検索ボックスとボタンのサイズはどちらももともとのサイズが最大値になるように設定します。

図3.7.15 各エレメントの設定

InputエレメントのStyleの設定は以下のようにします。

図3.7.16 「Search Input」の設定

不要なエレメントを削除する

Group Tab、TimeLineを削除します。

図3.7.17 不要エレメントの削除

検索結果の表示欄を調整する

グループ「Follow User」と内部のエレメント名称を調整します。

図3.7.18 各エレメントの名称変更

グループ「Userlist」の「This element is visible on page load」をオンにしておきます。

図3.7.19「Userlist」のLayout設定

Conditionalを設定する

URLにパラメータが存在する場合グループ「Body」を表示し、URLにパラメータが存在しない場合「Search Body」を表示する設定を行います。

グループ「Body」は以下のようにします。

This element is visible on page load : オフ

図3.7.20 「Body」の設定

Conditionalタブで「Get data from page URL」を選択し、パラメータをuser、TypeをUserを選択します。続けて「is not empty」を選択します。

Select a property to change when true から「This element is visible」を選択し、チェックします。

図3.7.21 「Get data page from URL」の設定

グループ「Search Body」は以下のようにします。

This element is visible on page load : オフ

図3.7.22 「Search Box」の設定

Conditionalタブで「Get data from page URL」を選択し、パラメータをuser、TypeをUserを選択します。続けて「is empty」を選択します。

Select a property to change when true から「This element is visible」を選択し、チェックします。

図3.7.23 「Get data page from URL」の設定

以上で、ユーザー一覧、ユーザー検索のレイアウトが作成できました。

実際に働く社員とカジュアル面談しませんか?

【毎週金曜日開催中】カジュアル面談しませんか?


参加はこちら!
よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

私たち株式会社ファンリピートは、ITを通じてお客様の課題解決を行うスタートアップベンチャーです。ノーコード・ローコードを用いたDX支援事業を主軸に、スピード感を持ってお客様のご要望にお応えしています。

2019年の創業から、出版業界・広告業界をはじめ、幅広い業界のデジタル施策を支援。財務管理・顧客管理などの基幹・業務システムから、新規Webサービスなど開発前検証フェーズのシステム導入支援まで、ワンストップでサポートを実施しています。この先も本質的なご提案を通じて、お客様の課題を解決し続けます。

コメント

コメントする

目次