いざ、FlutterFlowを始めたけどなぜだか画像がアップロードできない。そんなときの対処法になります。
今回の対象となるケース
- データベースはFirestoreを利用
- users(ユーザーリスト)などに画像を登録しようとしてもなぜだか反映されない。
原因と解決方法
FlutterFlowを使い始めた後に遭遇するあるある問題ではないでしょうか?あれ?前のプロジェクトでは問題なく動いたのに何か忘れてたっけ?的な。
原因はFirestoreのルール設定になります。
Firebaseにアクセスし、左側にあるメニューからStorageを選択し、Storage配下のルールを選択してください。
そしてルールの内容はおそらく以下のようになっているかと思います。
rules_version = '2';
service firebase.storage {
match /b/{bucket}/o {
match /{allPaths=**} {
allow read, write: if false;
}
match /users/{userId}/{allPaths=**} {
allow read: if true;
allow write: if request.auth.uid == userId;
}
}
}
この中でmatch /{allPaths=**}の設定を以下のように”true”に変更してください。
match /{allPaths=**} {
allow read, write: if true;
はい、これでおそらく画像(ファイル)をアップロードできるようになっています。
まとめ
今回はFlutterFlowを開始して間もない人が遭遇しそうな画像(ファイル)アップロードできない問題への対応方法を紹介しました。
私も遭遇して「あれ?どこの設定が漏れてるんだっけ?」ということがあります。
うっかり忘れてしまった際など、この記事が役立て場と思います。
株式会社Spovisorではノーコード・ローコードツールを使ったシステム開発、アプリ開発を実施しています。
要件定義から伴走して支援し、安価・スピーディー・柔軟な開発を行います。無料でご相談もお受けしております。