見出し画像

【FlutterFlow】総まとめ!ドキュメント・レファレンスの送受信はこれでOK

はい、こんにちは!前回記事からの続きです。FlutterFlowで、ページ間でドキュメント・レファレンスの受け渡しについてご紹介してきましたが、今回がそのシリーズの最後です~。

この記事でこのシリーズをまとめをやりましょう!ドキュメント・レファレンスをどう活用すればいいか、これを見れば、その概要が分かります!

なお、このシリーズは、この公式資料を参考にして作業しました。

ではいってみよう!

別のコレクションのドキュメントを表示したい

まずは、狙いを再確認します。

  • やることリストがあり、そのやることをリストをクリックすると、詳細ページが開きます。

  • その詳細ページにあるユーザ画像をクリックするとユーザの詳細ページが開きます。

リストページと詳細ページに紐づいているコレクションは、toDoListというものです。一方、ユーザ詳細ページに紐づいているのは、Usersというコレクションです。

そう、「ドキュメント・レファレンスを送信することで、別のコレクションのドキュメントを表示させる。」これが狙いです。

手順の流れはこうだ

手順の詳細を見る前に、その全体像を確認しましょう。シリーズの記事の中でも何度も登場していますね。でも、バックエンド・クエリの設定を加筆しておりますので、ご留意ください。

さきにデータを整備

最初のステップとして、コレクション側の準備作業が必要でした。

コレクションは、toDoListとUsersの2つを使い、それぞれ表示されるべき列のデータを登録しました。そして、肝心な作業として、ドキュメント・レファレンス(UsersのID)をtoDoListのコレクションに格納しましたね。

具体的には、UsersコレクションのUserIDをコピーして、toDoListのMember列に貼り付けました。地道な作業です。

これでコレクション側の準備は準備できました。

1.送信側ページと受信側ページを作る

コレクションの準備が終わったら、送信側ページをUIビルダーで加工しました。担当者の写真を表示させるCircleImageを追加しました。

加えて、受信側ページ、すなわち、ユーザ詳細ページを作りました。

これで必要なウィジェットがそろいました。

ポイントとしては、「ウィジェットを先に揃えて、データの送受信の設定は後から行う」ことです。

2.ページパラメータを作る

続いて、受信側ページ(ユーザ詳細ページ)にパラメータを作りました。ドキュメントレファレンスを受け止める箱ですね。

3.ドキュメントレファレンスを送信

今度は送信側ページ(やること詳細)に移動します。このいったり来たりがややこしい。ユーザ画像にNavigate toアクションをつけると同時に、ドキュメントレファレンスをパスする設定をするのでした。

ポイントは、「ドキュメント・レファレンスを送るアクションがあるのではなく、Navigate toアクションの一部として設定する」というところです。

4.バックエンド・クエリを設定

ここが、ドキュメントを送信するときと異なるところです。

今度は、再びユーザ詳細ページに移動して、ページウィジェットにバックエンド・クエリを設定します。ようするに、「パラメータに届くのは、UserIDだけだから、バックエンド・クエリを設定しないと、それに紐づく値は使えないよ」ということです。

5.フィールド値をウィジェットに紐づけ

そして最後に、ウィジェットの変数として、とUsersのフィールド値を紐づけて完成です!

もうちょっとキレイにまとめたかったのですがお許しを!


ではまた会いましょう!


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