インターン生がノーコードでアプリ開発!〜FlutterFlow 成長記録〜 vol.4

こんにちは!しゅんせいです!

僕は、ITベンチャーの株式会社GenAi(以下、GenAi)でインターン生として働いています!

このシリーズでは、エンジニア経験が全くない僕が、GenAiの菅原さん(以下、師匠)に指導を受けながら、アプリ開発を学ぶ過程を記録していきます。

以下は、師匠が書いたFlutterFlow(ノーコードアプリ開発ツール)に関する記事です。FlutterFlow自体の概要を知りたい方はこちらをご覧ください!

FlutterFlowのススメ

以下の予定で、師匠に出された課題をこなしていく形で進んでいくので、皆さんも一緒に手を動かしてみてください!

経費申請アプリまで進めると、SlackとFlutterFlowで作ったアプリを連携させるなど、かなり難しそうな機能まで実装できるようになります!

vol課題概要
vol.0自己紹介カード基本Widgetの役割
vol.1メモアプリActionの追加
vol.2匿名掲示板アプリFirebaseとの連携
vol.3匿名掲示板アプリPage Parameters/Page State/On Page Loadなど
vol.4掲示板アプリAuthenticationの設定、Conditional Visibility
vol.5掲示板アプリUXの改善(Validation,Padding)
vol.6スレッド付き掲示板アプリ複雑なデータモデル(ERD)、Action Output
vol.7スレッド付き掲示板アプリレスポンシブ対応(Responsive Visibility、Responsive Text)
vol.8経費申請アプリAPI call、Googleログイン
vol.9経費申請アプリCustom Action、Custom Function

本記事では、前回までの匿名掲示板アプリにログイン機能を追加し、掲示板アプリを作成します!

振り返り

前回は匿名掲示板アプリを作成し、Firebaseとの連携を学びました。

前回までの要点

  • 基本的なレイアウトはColumn、Row、Stackで作成可能
  • Widgetには様々なActionを追加可能
  • Backend Queryでバックエンドのデータを取り出せる
  • Page Parametersで、遷移後のページにデータを渡せる。←New!!
  • Page Stateでページ内での変数を作成できる。←New!!
  • On Page Loadで、ページのロード時にActionを設定できる。←New!!

掲示板アプリを作成!(Authenticationの設定)

師匠から「匿名掲示板アプリを、匿名ではない掲示板に変更しよう。」という課題が出されました。

FirebaseのAuthenticationを利用したログイン機能の実装を学びます!

要件に「匿名ログインもできるようにしてください。」とありますが、匿名ログインってなんでしょう?

師匠の教育コンテンツを見てみます!

FirebaseでAuthenticationを設定

要件に従って、メールアドレスでのログインと匿名ログインを追加します!

メール/パスワードをクリックし、「有効にする」にチェックを入れ、保存。

同様に匿名ログインを追加。

Firebase上での設定ができました!

FlutterFlowでAuthenticationを設定

vol.2でCloud Storageを使用するために、Authenticationはすでに設定済みです!

Initial Pageは仮の設定なので、sign in/sign upページを作成後に設定します!

FlutterFlowでsign in/sign upページを作成!

sign inページを作成できました!

ポイントとなるWidgetのPropertyを共有します!

パスワードを入力するTextFieldです。
Properties Panelを下にスクロールし、Additional PropertiesのPassword Fieldをオンにしました。

「signin」Buttonに、メールアドレスログインのActionを設定しました。 「Auth Log In」Actionは実行後、Authenticationの設定画面で選択したLogged In Pageに自動で遷移する仕様になっています!

RichTextというWidgetにActionを設定しました! 「signup」と書かれた文字をタップすると、sign upページに遷移するActionです。

「ゲスト」には、匿名ログインのActionを設定しました。 Auth providerは「Anonymous」を選択します!

sign upページはこんな感じです!
特にポイントは無かったので、説明は省きます。

Conditional Visibilityを用いる

要件を改めて確認すると、「自分の投稿以外は更新、削除できないようにしてください。」とありました。

編集アイコンを特定の状況下でのみ表示させたい、、、

こんな時は!グーグル先生!!!

発見!Conditional Visibilityを使うと良さそう! さっそくやってみます!

Conditional Visibility | FlutterFlow Docs
Learn how to conditionally change the visibility of widgets.

ここをオンにして

Conditionsを選択し、Single Conditionをクリック!

First Valueは、posts Document→userrefを選択!

Second Valueは、Authenticated User→User Referenceを選択!

投稿が持っている作成者のデータがログインしている人と一致した時のみ、編集ボタンが表示される設定になりました!

まとめ

今回は、FirebaseのAuthenticationと、Conditional Visibilityを学びました。

前回までの内容に比べて簡単でしたね!

次回は、掲示板アプリのUXを改善します!

株式会社GenAiについて

株式会社GenAiは、新規事業としてのアプリケーション開発(MVP開発)を最速で実現することで、日本の様々な企業の挑戦を支えているITコンサルのスタートアップです。

ローコードツールや生成AIなどの新規技術を積極的に取り入れた開発スタイルで、少数でも最速の価値提供を実現しています。 現在GenAiでは、一緒にチャレンジしたいエンジニア志望の方を募集しています!

ご興味ある方はまずはカジュアルにお話ししてみませんか?以下からご応募お待ちしております!

ポテンシャル採用 | アプリ制作をサポートいただける開発エンジニアを募集! - 株式会社GenAiのシステムエンジニアの採用 - Wantedly
▍業務内容 ・アプリ制作 ・アプリ開発の案件サポート ▍必須条件 ・何らかのWEB言語を理解できる方 ・アプリ開発に興味がある方 ・3ヶ月...

コメント

タイトルとURLをコピーしました