いつもお世話になっております。
新規作成した情報を次のスクリーンに引き継がせるように
リスト以外でパラメータを遷移させる方法について教えていただきたいです。
生徒が講師のレッスンを購入するボタンを押し、
そのタイミングでデータベースにその生徒の購入情報を作成し、
その画面で作成したレッスン購入情報を次のスクリーンで表示させたいと考えています。
ですがボタンのアクションでcreateDocしNavigateする形を取ろうとしているのですが、うまくいきません。
レッスン購入前のスクリーンでcreateさせたレッスン購入情報を
購入後のスクリーンに遷移する際に、購入情報をどのように遷移させれば良いのでしょうか。
リストから詳細に飛ぶ場合はパラメータで持ってくれば良いと思うのですが、
ご教示いただけると非常に助かります。
レッスン情報のコレクションのほかに、レッスン購入のコレクションを作成しております。
FlutterFlowで新しく作成したデータ(例えば「レッスン購入情報」)を次のスクリーンに引き継ぐには、AppStateのローカル変数を活用すれば良いと思いますよ。
こんな感じで、アプリ側で保持するフィールドがつくれます
Action時に、Firebaseの値ではなく、Appstateの値を更新やクリアすることができます。
ご確認いただきありがとうございます。
試してみましたが、途中わからずAppStateを使ってレッスン購入情報を次のスクリーンに引き継ぐ方法を教えて欲しいです。
試したやり方としては、
作成するレッスン購入情報(コレクションはLessonPurchase)のドキュメントリファレンスで作成しました。が、その後のやり方がわかりませんでした、、、。
下のレッスン購入確認のボタンのアクションで作成する購入情報をどのように引用するかがわかっていないです。
非常にわかりにくい私の状況説明かと思いますが、ご確認いただけますと幸いです。
※AppStateの参考動画や資料が少なく、おすすめの教材コンテンツがあれば教えていただけるとお嬉しいです。
基本は、シンプルな動作なので、以下の通りで
-
AppStateの役割
AppStateは、ローカル側で、
ユーザー登録情報などを引き継ぐために使用されます。
-
具体的な手順
例えば、添付のテキストウィジェットにAppstateの値を表示させたい場合は、以下の画像部分から選びます。
- 参考情報
今回のところに、ちょうど該当は、しないですが、以下のNoCodeStudyでAppstateの説明はしてますよ。
何度も本当にすみません。
毎回丁寧にご回答いただき本当ありがとうございます!
私の説明が本当に下手なので本当に伝えたかったところが伝えきれていなかったかもしれません。
①購入内容の確認画面
購入確定で初めてレッスン購入情報が作成されます。
購入確定のアクションでBackend Callでレッスン購入情報(Collection:Lesson Purchase)を
作成する形です。
②購入完了
前の画面で作成したレッスン購入情報をこの画面で参照したいです。
上記内容をApp Stateで実現させるということが可能ということでしょうか。
お手数おかけしますが、ご確認の程何卒よろしくお願いいたします。
@tsubasa
すみません、メンションつけられてなかったです。
大変お手数ですが、ご確認いただけますでしょうか。
よろしくお願いいたします。
申し訳ないです。返信遅れました。
ちょっと僕も勘違いしてました。つまり、直前でCreateしたDocumentを表示したいってことですね。
Appstateでもできますが、それであれば、シンプルに、”その作ったDocument”を表示させる方がシンプルです。
こんなイメージですよね?
やり方としては、
動作の流れ
- ユーザーが「購入確認」ページで情報を確認し、「購入」ボタンを押すと、Firestoreに新しいドキュメントが作成されます。
Create Document
アクションで作成したドキュメントの参照をパラメーターで「購入完了」ページに渡し、即座にその情報を表示します。
構築方法
ステップ1: 表示するページ「購入完了」にPage Parametersを設定
- 購入完了 ページを選択します。
- ページの設定画面を開き、Page Parameters セクションに以下の項目を追加します:
- Parameter Name:
documentReference
- Type: Firestore Document Reference
これにより、「購入完了」ページは、購入確認ページで作成したFirestoreドキュメントの参照を受け取れるようになります。
ステップ2: ドキュメント参照を渡す設定
- 「購入確認」ページでドキュメントを作成するアクション(例: ボタン押下時に実行される
Create Document
アクション)を設定します。
Create Document
アクションを設定し、Firebaseに新しいドキュメントを作成します。
Create Document
の設定で、以下の値を取得できることを確認します:
- **Document **: 作成したドキュメントの参照
- 次に、「購入完了」ページに遷移する
Navigate to
アクションを追加します。
- Action: Navigate to
- Page: 購入完了
- Parameters:
- document に
Create Document
アクションの Document Reference
を指定します。
ステップ3: 表示するデータの設定(購入完了ページ)
- 「購入完了」ページでデータを設定します。
2.表示させたいウィジェットを選択し、パラメーターから表示させます。
勘違いしてたのは、FirebaseへCreateする前に表示したいのだと思ってました。すでにCreateしたドキュメントを表示したいのであれば、Parameterを使うのが一般的です。(Appstateは、Firebaseに関係なくデータを保持するときに使います)
ちょっと、この辺の概念慣れないと難しいかもしれないですね。
毎週水曜日 20:00のFlutterFlowもくもく会で口頭で説明も可能ですよ。
【参考】
FlutterFlowでリストから選んだものを次のページに表示させる方法(次のページにデータを送る)
【参考】passing-data
翼さん、いつも本当にありがとうございます。
はい!!作成いただいた動画のイメージであっております!!!
手順で進めているのですが、何点か質問させていただきたいです。
ーーーーーーーーーーーーーーーーーーーーーーーーーーーー
①購入完了画面のパラメータ設定画面から新しくパラメータを作成する際に、
- Parameter Name: documentReference
- Type: Firestore Document Reference
か
- Parameter Name: documentReference
- **Type: Document
どちらでしょうか?
いただいた画像ではType Documentで選択されているようなのですが、ご確認いただきたいです。
一旦私としてはこのように設定しています。合っているかご確認いただけると助かります。
ーーーーーーーーーーーーーーーーーーーーーーーーーーーー
②下記手順の設定方法がわかりません、
ステップ2: ドキュメント参照を渡す設定
3. Create Document
の設定で、以下の値を取得できることを確認します:
- **Document **: 作成したドキュメントの参照
現状画像のような形でドキュメントを作成の手順は終わっているのですが、Create Docで作成した内容の参照をするにはどのようにしたら良いかわかっておりません。
本当に毎度お手数をおかけしてしまい申し訳ございませんが、回答いただけますと助かります。
@yuchimusic1018
1 Type Documentでお願いします。
2.参照のどの辺がわからないのかが、やや理解できてなく、スクリーンショットを見る限り、Navigateした時のパラメーターの送信方法がわからない?ということですかね?
このページでは、次のページ(購入完了)に作成した
Documentを渡せばOKです。
設定は、この動画つくりましたので、こちらを見て頂けるとわかりやすいかと。
「いいね!」 1
@tsubasa
詳細な説明画面、ありがとうございます!
無事解決させることができました!!!!
Create Docでレッスン購入情報を作成し
その際にAction Output Variable Nameにbuyrefと入れておくところですが、
その実装方法は初めてでした、、、。
非常に助かりました。
いつもお忙しい中ご対応くださり、本当にありがとうございます。
「いいね!」 1
良かったです~。ActionのOutPutを自分で作る、、っていうのは、確かにその概念が無いと気付かないかもしれませんね。
Output Variableは、例えば、
ユーザーの選択したオプションで動的に条件分岐させる時にも使えるので、
覚えておいて損は無いと思いますよ~。
今後も頑張ってくださいね。
「いいね!」 1