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

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

監修者

著者の写真

竹村貴也

株式会社ファンリピートCEO

ベンチャー企業でのシステム開発経験を経て、フリーランスとして多数の企業のプロジェクトマネジメントに携わる。2019年に株式会社ファンリピートを設立し、ローコード開発、AIを活用した業務効率化ソリューションの開発・提供を手がける。
著書:「ChatGPTによるPythonプログラミング入門. AI駆動開発で実現する社内業務の自動化


ノーコード/ローコードやAI関連の情報をお届け
無料のBOLTメールマガジン

不定期でノーコード/ローコードやAI関連のお役立ち情報をお届けするメルマガです。

  • ノーコード/ローコードの基礎・応用情報がわかる
  • 個人利用やビジネスで生かせるAI活用方法がわかる
  • 限定オファーや資料公開、ウェビナー情報がいち早く届く

ノーコード/ローコードを用いたシステム開発やAI利活用に興味がある方はぜひご登録ください!

目次

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」の設定

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

\ 高品質×高速開発 /
ノーコード・ローコード開発ならBOLT

「Webアプリケーション開発を高品質かつ高速で依頼したい…」そんな方に弊社のBOLTをご提案します。

  • 企画・提案力を武器にした上流工程支援
  • 高品質と高速を両立する開発支援
  • お客様第一の進行管理
  • 継続的なアップデート体制

システム開発の内製化やDXでお悩みの方はぜひご相談ください!

  • URLをコピーしました!

お役立ち資料



資料請求はこちら

資料請求

お問い合わせはこちら

お問い合わせ
目次