見出し画像

電子チケットの販売代行WebアプリをBubbleで作る~8~

このタイミングで気が付くべきではないのですが、タイトルと内容のミスマッチが本当にひどい。

タイトル詐欺で本当にすみません。

そんな今回は、プロトタイプとして作っているWebアプリの細かい部分の実装作業をまとめていこうかと思います。

大枠は完成していたのですが、一通り動かしてみて「ちょっとこれは直さなきゃ」とか「これはさすがにあった方がいいな」というものを都度実装していきました。

フォロー解除ボタンの実装

「フォローボタン実装したときに解除も実装しとけよ」という声が聞こえてきますが、何分初心者なものでその時は全く気が付きませんでした。

実装は割と簡単でした。

フォロー解除ボタンを設置し、ワークフローで”フォロー関係を示すフィールドを削除する”です。

私はフォロー関係を示すテーブル「Relation_User」を1対1の関係で作っていたので、”自分”が”Current User”かつ”フォローユーザー”が”現在のページのユーザー”であるテーブルを検索し、それを消すというワークフローです。

ちなみにフォロー解除ボタンは”現在のページのユーザー”をフォローしている状態でないと表示しないようにさせています。

所持チケットが出品中かどうかを表示させる

これはテスト中、表示してあった方が楽だなと思い実装しました。

これは条件付きで表示する”リセール出品中”テキストと”連番募集中”テキストを作成しました。

その条件は

”Cellのもつチケットデータと等しい「オリジナルチケット」を持つ”「リセールチケット」が存在する

です。

連番チケットでもリセールチケットと同様にして実装しています。

別日程のイベントの表示

ライブによくある、ツアーだったり2日公演だったりに対応する機能です。

イベント詳細ページに、そのイベントに関連する別日程のイベント一覧があるといいかなと。

実装方法は例によってリピーティンググループです。

リピーティンググループのData sourceを「Do a search for」で探すのですが、ツアーだったり2日公演というのはプログラム的には全く別イベントなわけです。探しようがありませんでした。

とりあえず諦めて、「イベント」テーブルに「イベントID」というフィールドを作成しました。

関連のあるイベントにはこの「イベントID」に共通のIDを入れます。(私は”関連イベント内で一番日程の早いイベント”を共通項にしました)

これで、”現在のページの「イベントID」と同じ「イベントID」を持つ「イベント」テーブル”を検索することができます。

そのうえで、検索し終えて共通項を持つ「イベント」テーブルたちにもうひとフィルターかけます。

”現在のページの「イベント」と同じ「イベント」を省く”です。

これで残った「イベント」テーブルを表示させていけば、現在ページに表示されているイベントに関連のあるイベント(ページのイベント以外)を表示させることができます。

プロトタイプの完成

以上で、プロトタイプが完成しました。

足りない機能は数えればきりがないですし、デザインに関しては恐ろしいくらいに整っていません。

動く最低限の装飾、テスト動作させるのにやりやすい配置、と実際に見てみると驚かれると思います。

ですが初心者でしかない私があれこれ悩んでも時間の無駄ですので、とりあえずこれで終わりにします。

Bubbleって制限内であればHobyコースでもデプロイもできるんですよね?

できなかったらどうしよう。

とりあえず今後はデプロイ周りを確認し次第、公開してみようかと思います。


ここまで読んでくださってありがとうございます。

この記事が気に入ったらサポートをしてみませんか?